在C++中,cbegin()
是一个用于获取容器(如数组、向量、列表等)起始位置的常量迭代器的函数。它返回一个指向容器第一个元素的常量迭代器,这意味着你不能通过这个迭代器修改容器中的元素。
cbegin()
与begin()
的主要区别在于,cbegin()
返回的是常量迭代器,而begin()
返回的是非常量迭代器。当你需要遍历一个容器但不打算修改其内容时,使用cbegin()
是一种更安全的选择,因为它可以防止你意外地修改容器中的元素。
下面是一个简单的示例,展示了如何使用cbegin()
:
#include<iostream>
#include<vector>
int main() {
std::vector<int> numbers = {1, 2, 3, 4, 5};
// 使用cbegin()获取常量迭代器
auto it = numbers.cbegin();
// 遍历容器并打印元素
while (it != numbers.cend()) {
std::cout << *it << " ";
++it;
}
return 0;
}
在这个示例中,我们使用cbegin()
和cend()
来遍历一个整数向量。由于cbegin()
返回的是常量迭代器,我们不能通过它来修改向量中的元素。