c++ vector遍历详解

一、vector遍历

vector是c++中常用的容器之一,可以方便快捷的进行数据存储和管理。在进行vector的遍历时,最基础的方法是通过循环进行遍历。以下是一个示例代码:

    vector vec = {1, 2, 3, 4, 5};
    for(int i = 0; i < vec.size(); i++){
        cout << vec[i] << " ";
    }

此代码中,循环遍历了vector中的每一个元素,输出其值。这种方法最为常见,也是最为基础的vector遍历方式。

二、c vector变量取值运行报错

在进行c++ vector遍历时,经常会遇到一种问题,即“c vector变量取值运行报错”。这是因为,c vector与c++ vector有所不同,在进行取值时需要使用c语言的方式进行。代码示例如下:

    vector vec = {1, 2, 3, 4, 5};
    for(int i = 0; i < vec.size(); i++){
        int val = vec.at(i);
        cout << val << " ";
    }

在此代码中,使用了c语言的方式进行vector的取值,避免了出现报错的情况。

三、vector遍历删除

在进行vector遍历时,有时需要进行删除操作。使用erase()函数可以实现删除,以下是一段代码示例:

    vector vec = {1, 2, 3, 4, 5};
    for(auto it = vec.begin(); it != vec.end();){
        if(*it == 3){
            it = vec.erase(it);
        }else{
            it++;
        }
    }
    for(auto val : vec){
        cout << val << " ";
    }

此代码中,使用了迭代器进行遍历,当检测到值为3时,则使用erase()函数进行删除操作,最后再次遍历vector进行输出。

四、c++遍历vector

c++11中提供了一种更为简便的vector遍历方式,即使用auto关键字进行遍历。如下所示:

    vector vec = {1, 2, 3, 4, 5};
    for(auto val : vec){
        cout << val << " ";
    }

此代码中,使用auto关键字声明一个val变量,遍历vector中的每一个元素。

五、遍历vector

当需要同时遍历两个vector时,可以使用以下方式进行操作:

    vector vec1 = {1, 2, 3, 4, 5};
    vector vec2 = {6, 7, 8, 9, 10};
    for(int i = 0; i < vec1.size(); i++){
        cout << vec1[i] << " " << vec2[i] << endl;
    }

此代码中,使用两个循环遍历vec1和vec2,输出它们对应位置的元素。

六、auto遍历vector

除了上述方式外,当需要同时遍历多个vector时,还可以使用auto进行简单的代码实现。以下是一个示例:

    vector<vector> vecs = {{1, 2}, {3, 4}, {5, 6}};
    for(auto &vec : vecs){
        for(auto val : vec){
            cout << val << " ";
        }
        cout << endl;
    }

此代码中,使用auto声明一个vec,对vecs进行遍历,再在其中使用auto进行遍历元素。

七、二维vector遍历

在使用二维vector进行遍历时,可以使用以下方式进行操作:

    vector<vector> vecs = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};
    for(int i = 0; i < vecs.size(); i++){
        for(int j = 0; j < vecs[i].size(); j++){
            cout << vecs[i][j] << " ";
        }
        cout << endl;
    }

此代码中,使用两个循环进行遍历,第一个循环遍历vec,第二个循环遍历vec[i]中的元素。

八、vector和list容易遍历

在使用vector和list进行遍历时,常常使用以下方式:

    vector vec = {1, 2, 3, 4, 5};
    list li(vec.begin(), vec.end());
    for(auto it = li.begin(); it != li.end(); it++){
        cout << *it << " ";
    }

此代码中,首先将vector转化为list,再使用list的begin()和end()函数进行遍历,输出每个元素的值。

九、vector循环遍历

当需要进行循环遍历时,可以使用下面的代码进行操作:

    vector vec = {1, 2, 3, 4, 5};
    int index = 0;
    while(true){
        cout << vec[index] << " ";
        index = (index + 1) % vec.size();
    }

此代码中,使用一个循环不断地输出vector中的元素,当index超过vector的长度时,回到初始位置进行循环。

十、vector二维数组遍历

在使用vector作为二维数组进行遍历时,可以使用以下方式进行操作:

    vector<vector> vecs = {{1, 2, 3}, {4, 5}, {6, 7, 8, 9}};
    for(int i = 0; i < vecs.size(); i++){
        for(int j = 0; j < vecs[i].size(); j++){
            cout << vecs[i][j] << " ";
        }
        cout << endl;
    }

此代码中,使用两个循环遍历vector中的元素,输出其值。

原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/283113.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小蓝小蓝
上一篇 2024-12-22 08:07
下一篇 2024-12-22 08:07

相关推荐

  • Python遍历集合中的元素

    本文将从多个方面详细阐述Python遍历集合中的元素方法。 一、for循环遍历集合 Python中,使用for循环可以遍历集合中的每个元素,代码如下: my_set = {1, 2…

    编程 2025-04-29
  • Python如何遍历字典中的key和value

    本文将详细讲解Python中如何遍历字典中的key和value,包括多种遍历方式以及在遍历过程中的一些应用场景。 一、遍历字典中的key和value 在Python中,字典是一种无…

    编程 2025-04-29
  • 使用PHP foreach遍历有相同属性的值

    本篇文章将介绍如何使用PHP foreach遍历具有相同属性的值,并给出相应的代码示例。 一、基础概念 在讲解如何使用PHP foreach遍历有相同属性的值之前,我们需要先了解几…

    编程 2025-04-28
  • 二叉树非递归先序遍历c语言

    本文将为您详细介绍二叉树的非递归先序遍历算法,同时提供完整的C语言代码示例。通过本文,您将了解到二叉树的先序遍历算法,以及非递归实现的方式。 一、二叉树的先序遍历算法介绍 在介绍二…

    编程 2025-04-28
  • Python如何遍历列表

    在Python编程中,列表是一种常用的数据类型,它允许我们存储多个值。但是,我们如何遍历列表并对其中的每个值进行操作呢? 一、for循环遍历列表 fruits = [‘apple’…

    编程 2025-04-28
  • Python遍历字典删除元素

    本文主要介绍Python中如何遍历字典并删除元素。在实际应用中,遍历字典并删除元素是一种非常常见的操作,但需要注意的是,直接在字典中删除元素可能会改变字典中其他元素的索引顺序,因此…

    编程 2025-04-28
  • Python遍历文件夹中的shp文件

    对于GIS分析领域的开发工程师,遍历文件夹中的shp文件是一个常见的需求。Python提供了一种非常便捷的方法来实现这个功能。本文将从以下几个方面进行讲解: 一、`os`模块的使用…

    编程 2025-04-27
  • Python中遍历字符串中的数字两位数及其应用

    本文将从多个方面详细阐述Python中遍历字符串中的数字两位数的应用及实现方法。 一、提取字符串中的数字两位数 Python中提取字符串中的数字两位数可以使用正则表达式,具体代码如…

    编程 2025-04-27
  • Python中for循环遍历列表

    本文将全方位详细介绍Python中for循环遍历列表的方法和技巧,帮助您更加深入理解并灵活运用Python中的for循环。 一、for循环遍历列表的基础用法 在Python中使用f…

    编程 2025-04-27
  • Linux sync详解

    一、sync概述 sync是Linux中一个非常重要的命令,它可以将文件系统缓存中的内容,强制写入磁盘中。在执行sync之前,所有的文件系统更新将不会立即写入磁盘,而是先缓存在内存…

    编程 2025-04-25

发表回复

登录后才能评论