21xrx.com
2024-12-27 19:33:07 Friday
登录
文章检索 我的文章 写文章
如何遍历C++11的vector?
2023-06-24 01:53:55 深夜i     --     --
C++11 vector 遍历

C++11中的vector是最常用的标准库容器之一,它提供了一种动态数组的实现。在遍历vector时,有几种不同的方式可以选择,每个方式都有其优点和缺点。下面我们将介绍几种遍历vector的方式。

1. 使用for循环

使用for循环遍历vector是最基本的方法,它的语法如下:


for(int i = 0; i < vec.size(); i++){

  std::cout << vec[i] << " ";

}

这个方法的优点是简单易懂,适合初学者。但是要注意,每一次访问vector中的元素都需要进行边界检查,这可能会导致性能问题。

2. 使用迭代器

使用迭代器遍历vector是更加通用和高效的方法,因为它避免了边界检查,同时也可以用于其他容器的遍历。语法如下:


for(std::vector<int>::iterator it = vec.begin(); it != vec.end(); ++it){

  std::cout << *it << " ";

}

这个方法遍历vector中的每个元素,并将其打印出来。注意,迭代器是指向vector中元素的指针,需要使用*运算符解引用获取元素值。

3. 使用范围for循环

C++11引入了一种新的语法糖,可以更方便地遍历容器,包括vector。这就是使用范围for循环,语法如下:


for(auto elem : vec)

  std::cout << elem << " ";

这个方法使用auto关键字来推导elem的类型,并且隐藏了迭代器的使用。因此代码更加简洁,易于编写和阅读。

总结

无论你使用哪种方法,遍历vector的核心思想都是相同的。每个元素都可以使用下标访问,也可以使用迭代器来访问。同时,多数情况下使用迭代器比使用下标更加高效。最后,当你需要遍历vector时,可以根据实际情况选择合适的方法。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复