Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
Tags
- Clojure
- Android
- async
- design pattern
- type_traits
- sprintf
- kotlin
- SHA512
- web
- coroutines
- Functional
- c++
- sha256
- Chrono
- ChromeTab
- Reflect
- CustomTab
- Scala
- go
- RAII
- AES
- traits
- ranges
- program
- template
- WebView
- Observer
- stringprintf
- SHA1
- haskell
Archives
- Today
- Total
프로그래밍 검색 블로그
C++ ranges view::drop, view::drop_while, view::drop_exactly 본문
drop
1 2 3 4 | vector<int> v = view::iota(0, 10) | view::drop(2); cout << view::all(v) << endl; | cs |
처음부터 x개의 원소를 제외하고 나머지를 반환한다.
요소가 없거나 부족하다면 빈 range를 반환한다.
skip(x) 비슷하게 생각하면 될듯
출력: [2,3,4,5,6,7,8,9]
drop_exactly
1 2 3 4 | vector<int> v = view::iota(0, 10) | view::drop_exactly(100); cout << view::all(v) << endl; | cs |
drop과 같지만 이쪽은 요소가 없거나 부족하다면
std::bad_alloc을 던진다
.
출력: std::bad_alloc
drop_while
1 2 3 4 5 6 | vector<int> v = view::iota(0, 10) | view::drop_while([](int e){ return e < 6; }); cout << view::all(v) << endl; | cs |
요소의 맨앞부터 조건을 함수에 넣어서 false 가 나올때까지 제거한다.
출력: [6,7,8,9]
'C++ ranges' 카테고리의 다른 글
| C++ ranges view::replace, view::replace_if (0) | 2017.10.08 |
|---|---|
| c++ ranges view:transform (0) | 2017.10.08 |
| C++ ranges view::group_by (0) | 2017.10.08 |
| C++ ranges view::c_str (0) | 2017.10.08 |
| C++ ranges view::join (flatMap) (0) | 2017.10.08 |
Comments