일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- Reflect
- Chrono
- Scala
- SHA1
- coroutines
- program
- ChromeTab
- traits
- RAII
- kotlin
- web
- async
- haskell
- AES
- sha256
- go
- type_traits
- Clojure
- Android
- SHA512
- Functional
- WebView
- CustomTab
- ranges
- design pattern
- template
- stringprintf
- sprintf
- c++
- Observer
- Today
- Total
목록template (30)
프로그래밍 검색 블로그
12345678 vector v = view::iota(0, 100) | view::group_by([](int before, int current){ return (before / 10) == (current / 10); }); for(auto& e : v){ cout
문자열로부터 각 문자열의 원소로 범위를 만들어낸다 12 vector v = view::c_str("12345"); cout
두 ranges를 연결할것 같은 이름이지만 실제로는 다른 언어의 flatMap과 동일 이차원 컨테이너의 원소들을 1차원으로 만든다 123456789 vector nums = { {1,2,3,4,5}, {6,7,8,9,10}, {1,2,3,4,5}, {6,7,8,9,10}, }; vector flat_nums = view::join(nums); cout
첫번쨰 원소를 제외하고 나머지 원소만을 가져온다. haskell12let l = [0,1,2,3]print(tail l) // [1,2,3]cs C++123 vector c = view::iota(0, 4); cout
인자로 받은 Range를 무한수열로 생성한다 [1, 2, 3] 에 cycle을 연결하면 [1,2,3,1,2,3,1,2,3...] 으로 변환된다. 12345 vector c = view::iota(0, 4) | view::cycle | view::take(10); cout
take는 C#의 Take() 와 비슷하게 생성하는 원소들을 제한한다. 12345678910111213141516 #include #include #include #include using namespace std;using namespace ranges; int main(){ vector c = view::iota(0) //
123 vector v = c >>= [](int e){ return yield_if(e % 2 == 0, e * 2); };Colored by Color Scriptercs for_each 혹은 yield를 사용할 조건식을 할때 첫번쨰 인자를 조건식으로 지정가능즉 향상된 std::transform 기능이라고 봐도 무방할듯 12345678910111213141516171819 #include #include #include #include using namespace std;using namespace ranges; int main(){ vector c = {1,2,3,4,5}; vector v = c >>= [](int e){ return yield_if(e % 2 == 0, e * 2); }; cout
1234567891011121314#include #include #include using namespace std;using namespace ranges; int main(){ vector v = view::iota(0, 10) | view::for_each([](int e){ return yield(e * 2); }); cout = [](int e){ return yield(e * 2); };Colored by Color Scriptercs 기본적으로 ranges는 모두 가능하며 1234 vector c = {1,2,3,4,5}; vector v = c >>= [](int e){ return yield(e * 2); };cs 1234567 map c = { {1,2}, {3,4} }; vector..
123456789101112#include #include #include using namespace std;using namespace ranges;int main(){ vector v = view::iota(0, 10) | view::filter([](int e){ return e