📅  最后修改于: 2023-12-03 14:59:47.582000             🧑  作者: Mango
cend()
函数是 C++ STL 中 Vector
容器的成员函数之一,它返回一个迭代器,代表 Vector
中最后一个元素之后的位置,也被称为“invalid iterator”。
下面是 cend()
函数的原型:
iterator cend() noexcept;
const_iterator cend() const noexcept;
其中,iterator
和 const_iterator
分别是 C++ STL 中迭代器的两种类型,它们的区别在于前者可以修改数据,后者不能。
cend()
函数没有参数。
下面是一个简单的示例,演示了如何使用 cend()
函数:
#include <iostream>
#include <vector>
int main() {
std::vector<int> vec {1, 2, 3, 4, 5};
for (auto i = vec.cbegin(); i != vec.cend(); ++i) {
std::cout << *i << " ";
}
return 0;
}
运行上面的代码,输出结果为:
1 2 3 4 5
上面的代码使用 cbegin()
函数获取 Vector
的起始位置迭代器,使用 cend()
函数获取 Vector
的结束位置迭代器,然后使用循环依次输出容器中的元素。
cend()
函数返回一个“invalid iterator”,如果对其进行解引用或增加/减少操作,将会引发未定义的行为。cend()
函数是 C++ 11 引入的,如果你使用的是旧的编译器,可能不支持该函数。