std::array<T,N>::rbegin, std::array<T,N>::crbegin
来自 cppreference.cn
reverse_iterator rbegin() noexcept; |
(1) | (C++11 起) (自 C++17 起为 constexpr) |
const_reverse_iterator rbegin() const noexcept; |
(2) | (C++11 起) (自 C++17 起为 constexpr) |
const_reverse_iterator crbegin() const noexcept; |
(3) | (C++11 起) (自 C++17 起为 constexpr) |
返回一个指向逆序 array
的第一个元素的逆序迭代器。它对应于非逆序 array
的最后一个元素。如果 array
为空,则返回的迭代器等于 rend()。
目录 |
[编辑] 返回值
指向第一个元素的逆向迭代器。
[编辑] 复杂度
常数时间。
[编辑] 注意
返回的逆序迭代器的底层迭代器是尾部迭代器。因此,如果尾部迭代器失效,则返回的迭代器也会失效。
[编辑] 示例
运行此代码
#include <algorithm> #include <array> #include <iostream> #include <string> #include <string_view> void print(const std::string_view s) { std::cout << s << ' '; } int main() { const std::array<std::string_view, 8> data { "▁", "▂", "▃", "▄", "▅", "▆", "▇", "█" }; std::array<std::string, 8> arr; std::copy(data.cbegin(), data.cend(), arr.begin()); print("Print 'arr' in direct order using [cbegin, cend):\t"); std::for_each(arr.cbegin(), arr.cend(), print); print("\n\nPrint 'arr' in reverse order using [crbegin, crend):\t"); std::for_each(arr.crbegin(), arr.crend(), print); }
输出
Print 'arr' in direct order using [cbegin, cend): ▁ ▂ ▃ ▄ ▅ ▆ ▇ █ Print 'arr' in reverse order using [crbegin, crend): █ ▇ ▆ ▅ ▄ ▃ ▂ ▁
[编辑] 参阅
返回指向末尾的逆向迭代器 (公共成员函数) | |
(C++14) |
返回指向容器或数组开头的反向迭代器 (函数模板) |