在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()
返回的是常量迭代器,我們不能通過它來修改向量中的元素。