当前位置:首页 C++ > 正文

C++ vector::end() 函数以及如何获取最后一个元素方法

作者:野牛程序员:2023-08-08 12:33:50 C++阅读 4398

vector::end() 是C++标准库中 std::vector 类的一个成员函数,它返回一个指向容器中最后一个元素之后位置的迭代器。注意,这个迭代器并不指向最后一个元素本身,而是指向容器的末尾。

要获取 vector 容器中的最后一个元素,你可以使用 vector::back() 函数,它返回一个对最后一个元素的引用。这是一个常用的方法,非常方便。

以下是一个示例代码,演示如何使用 end()back() 函数:

#include <iostream>
#include <vector>

int main() {
    std::vector<int> numbers = {1, 2, 3, 4, 5};

    // 使用 end() 获取指向容器末尾的迭代器
    std::vector<int>::iterator it = numbers.end();  // 这不是指向最后一个元素,而是指向容器的末尾

    // 使用 back() 获取最后一个元素
    int lastElement = numbers.back();

    std::cout << "Value from end(): " << *it << std::endl;  // 这将导致未定义行为,不要这样做!
    std::cout << "Last element: " << lastElement << std::endl;

    return 0;
}

注意,end() 函数返回的是一个指向容器末尾的迭代器,而不是指向最后一个元素。如果你尝试对 end() 返回的迭代器解引用,会导致未定义行为。如果你需要最后一个元素本身,应该使用 back() 函数。

总之,end() 函数用于遍历元素,而 back() 函数用于获取最后一个元素的值。


野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892
野牛程序员教少儿编程与信息学竞赛-微信|电话:15892516892
相关推荐

最新推荐

热门点击