我不明白
之间的区别我通常只使用 .begin() 和 .end()
答案 0 :(得分:0)
constexpr iterator begin() noexcept;
返回一个迭代器,当取消引用时返回对非const
(可变)元素的引用。
constexpr const_iterator cbegin() const noexcept;
返回一个迭代器,当取消引用时返回对 const
(不可变)元素的引用。
constexpr const_iterator begin() const noexcept;
见cbegin()
。此 begin()
是在调用 begin()
并且 vector
在 const
上下文中时选择的重载。
示例:
void foo(std::vector<int> const& v) {
auto it = v.begin(); // uses the last `begin()` because `v` is `const`
}
r
版本是上述的反向版本,可以从 vector
的后面到前面进行迭代。