陈柏凉 2022-02-17 13:28 采纳率: 86.7%
浏览 17
已结题

vector定义二维数组赋值顺序不同输出结果不同

    vector<vector<int>>array;    //大容器

    vector<int>v1;                //小容器
    vector<int>v2;
/*
    array.push_back(v1);    
    array.push_back(v2);
*/
    for (int i = 0; i < 10; i++) {
        v1.push_back(i);
        v2.push_back(i+10);
    }

    array.push_back(v1);        
    array.push_back(v2);
    array.push_back(v3);


    for (vector<vector<int>>::iterator it = array.begin(); it != array.end(); it++) {
        for (vector<int>::iterator vbegin = (*it).begin(); vbegin != (*it).end(); vbegin++) {
            cout << *vbegin << "  ";
        }
        cout << endl;
    }

注释掉的是我的第一种写法,但是最后输出的时候没有任何输出,知道先赋值在push_back,请问两者的实现到底有什么差异呢?

  • 写回答

1条回答 默认 最新

  • ty94666 2022-02-17 13:35
    关注

    你小容器里吗都没装东西,直接就添加到大容器,肯定没有输出啊,都是空的

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 2月25日
  • 已采纳回答 2月17日
  • 创建了问题 2月17日

悬赏问题

  • ¥15 linux驱动,linux应用,多线程
  • ¥20 我要一个分身加定位两个功能的安卓app
  • ¥15 基于FOC驱动器,如何实现卡丁车下坡无阻力的遛坡的效果
  • ¥15 IAR程序莫名变量多重定义
  • ¥15 (标签-UDP|关键词-client)
  • ¥15 关于库卡officelite无法与虚拟机通讯的问题
  • ¥15 目标检测项目无法读取视频
  • ¥15 GEO datasets中基因芯片数据仅仅提供了normalized signal如何进行差异分析
  • ¥100 求采集电商背景音乐的方法
  • ¥15 数学建模竞赛求指导帮助