GeezerVison is showing cpprefjp.github.io — std::reverse - cpprefjp C++日本語リファレンス
最終更新日時:
2026年08月25日 12時11分17秒 (JST)
Akira Takahashi
が更新
履歴
編集
function template
<algorithm>
std:: reverse
namespace std {
template < class BidirectionalIterator >
void reverse ( BidirectionalIterator first ,
BidirectionalIterator last ); // (1) C++98
template < class BidirectionalIterator >
constexpr void reverse ( BidirectionalIterator first ,
BidirectionalIterator last ); // (1) C++20
template < class ExecutionPolicy , class BidirectionalIterator >
void reverse ( ExecutionPolicy && exec ,
BidirectionalIterator first ,
BidirectionalIterator last ); // (2) C++17
}
概要
要素の並びを逆にする。
要件
*first は Swappable でなければならない
効果
0 以上 (last - first) / 2 未満の整数 i について、iter_swap (first + i, (last - i) - 1) を行う
計算量
正確に (last - first) / 2 回 swap する
例
出力
esrever
実装例
template < class BidirectionalIterator >
void reverse ( BidirectionalIterator first , BidirectionalIterator last ) {
for ( ; first != last && first != -- last ; ++ first )
std::iter_swap ( first , last );
}
関連項目
参照