std::move_iterator<Iter>:: base
From cppreference.net
<
cpp
|
iterator
|
move iterator
C++
Iterator library
| Iterator concepts | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Iterator primitives | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Algorithm concepts and utilities | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Indirect callable concepts | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Common algorithm requirements | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Utilities | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Iterator adaptors | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
std::move_iterator
| Member functions | ||||
|
move_iterator::base
|
||||
| Non-member functions | ||||
|
(until C++20)
(C++20)
|
||||
|
(C++20)
|
||||
|
(C++20)
|
||||
|
(C++20)
|
||||
|
(C++20)
|
||||
|
(C++11)
|
| (1) | ||
|
iterator_type base
(
)
const
;
|
(constexpr since C++17)
(until C++20) |
|
|
constexpr
const
iterator_type
&
base
(
)
const
&
noexcept
;
|
(since C++20) | |
|
constexpr
iterator_type base
(
)
&&
;
|
(2) | (since C++20) |
기본 반복자를 반환합니다.
1)
기본 반복자의
복사본을 반환
(C++20 이전)
참조를 반환
(C++20 이후)
2)
기본 반복자에서 이동 생성된 반복자를 반환합니다.
목차 |
반환값
1)
current
2)
std
::
move
(
current
)
예제
이 코드 실행
#include <algorithm> #include <iostream> #include <iterator> #include <vector> int main() { std::vector<int> v{0, 1, 2, 3, 4}; std::move_iterator<std::vector<int>::reverse_iterator> m1{v.rbegin()}, m2{v.rend()}; std::copy(m1.base(), m2.base(), std::ostream_iterator<int>(std::cout, " ")); std::cout << '\n'; }
출력:
4 3 2 1 0
결함 보고서
다음의 동작 변경 결함 보고서들은 이전에 발표된 C++ 표준에 소급 적용되었습니다.
| DR | 적용 대상 | 게시된 동작 | 올바른 동작 |
|---|---|---|---|
| LWG 3391 | C++20 | 오버로드 ( 1 ) 가 기본 반복자의 사본을 반환함 | 참조를 반환함 |
| LWG 3593 | C++20 | 오버로드 ( 1 ) 가 noexcept가 아님 | noexcept로 지정됨 |
참고 항목
|
가리키는 요소에 접근
(public member function) |