成员(member)begin有两个重载,其中之一是 const_iterator begin() const;
。还有cbegin const_iterator cbegin() const noexcept;
。它们都将 const_iterator
返回到列表的开头。有什么区别?
最佳答案
begin
将返回 iterator
或 const_iterator
,具体取决于调用它的对象的 const 限定。
cbegin
将无条件返回 const_iterator
。
std::vector<int> vec;
const std::vector<int> const_vec;
vec.begin(); //iterator
vec.cbegin(); //const_iterator
const_vec.begin(); //const_iterator
const_vec.cbegin(); //const_iterator
关于c++ - vector 的 cbegin 和 begin 有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31208640/