2 scq52013 scq52013 于 2016.03.31 20:59 提问

关于 二维的vector push_back怎么用?
c++
                                          关于 二维的vector    push_back怎么用?

8个回答

stadyhungry
stadyhungry   2016.03.31 21:38
已采纳
    //向其中添加数据
    vector<vector<int>> vv;//二维vector
    vector<int> vn;//创建一个一维vector
    vn.push_back(1);
    vn.push_back(2);
    vv.push_back(vn);//将一维vector push进去

    vn.clear();
    vn.push_back(3);
    vn.push_back(4);
    vn.push_back(5);
    vv.push_back(vn);

    //读取其中的数据
    vector<int> vn2;
    for (vector<vector<int>>::iterator it = vv.begin(); it != vv.end(); it++)
    {
        for (vector<int>::iterator it1 = it->begin(); it1 != it->end(); it1++)
        {
            vn2.push_back(*it1);
        }
    } 
qq423399099
qq423399099   Ds   Rxr 2016.03.31 21:45
 #include<iostream>
#include<vector>
using namespace std;

typedef struct point
{
    int x;
    int y;
}POINT;

int main()
{
    vector<vector<POINT>> a;
    for(int i = 0; i < 5; i++)
    {
        vector<POINT> b;
        a.push_back(b);
        for(int j = 0; j < 4; j++)
        {
            POINT c = {i, j};
            a[i].push_back(c);
        }
    }

  //用迭代器遍历打印
    vector<vector<POINT>>::iterator vec_it;
    for(vec_it = a.begin(); vec_it != a.end(); vec_it++)
    {
        vector<POINT>::iterator it;
        for(it = (*vec_it).begin(); it != (*vec_it).end(); it++)
        {
            cout << " [" <<it->x << "," << it->y << "] ";
        }
        cout << endl;
    }
    system("pause");
}

图片说明

qq_31359953
qq_31359953   2016.03.31 21:03

头文件为#include
using namespace std;

声明为 vectorv;

int i=0;

v.push_back(i);

这样0就被插入vector尾部

scq52013
scq52013 我是想定义一个vector<vector <POINT> >a; 行存的是点 存了几个由点构成的多边形 vector<vector <POINT> >a;这样还能用push_back 吗
2 年多之前 回复
scq52013
scq52013 我是初学者你能举个例子吗?谢谢
2 年多之前 回复
qq_31359953
qq_31359953 你定义一个结构体,含有两个元素;当做vector的元素不就行了?
2 年多之前 回复
scq52013
scq52013 不是 是二维的! 我 弄不进去
2 年多之前 回复
qq_31359953
qq_31359953   2016.03.31 21:04

vector < int >v

CSDNXIAON
CSDNXIAON   2016.03.31 21:12

C++ vector的push_back
关于 vector push_back 实现
vector::push_back() demo
----------------------同志你好,我是CSDN问答机器人小N,奉组织之命为你提供参考答案,编程尚未成功,同志仍需努力!

qq_31359953
qq_31359953   2016.03.31 21:21

type struct {
char a[5][5];
}TYPE;

TYPE t;

vector < TYPE >v;

v.push _ back(t);

qq_31359953
qq_31359953   2016.03.31 21:21

type struct {
char a[5][5];
}TYPE;

TYPE t;

vector < TYPE >v;

v.push _ back(t);

VisualEleven
VisualEleven   Ds   Rxr 2016.04.01 17:33

vector > xxxxx

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
C++ vector::push_back 用法剖析
 C++编程语言中有一种叫做Vector的应用方法,它的作用在实际编程中是非常重要的。在这里我们将会为大家详细介绍一下C++ Vector的相关应用技巧及基本内容,希望能给大家带来一些帮助。 (1)vector 标识符 ; (2)vector 标识符(最大容量) ; (3)vector 标识符(最大容量,初始所有值); (4) int i[4] = {12,3,4,5};
[C++]vector 的 push_back实现原理
vector 的 push_back实现原理原理:vector是用数组实现的,每次执行push_back操作,相当于底层的数组实现要重新分配大小(即先free掉原存储,后重新malloc);这种实现体现到vector实现就是每当push_back一个元素,都要重新分配一个大一个元素的存储,然后将原来的元素拷贝到新的存储,之后在拷贝push_back的元素,最后要析构原有的vector并释放原有的内存
C++ vector 和push_back 详解
C++编程语言中有一种叫做Vector的应用方法。 (1)vector 类型 > 标识符 ; (2)vector 类型 > 标识符(最大容量) ; (3)vector 类型 > 标识符(最大容量,初始所有值); (4) int i[4] = {12,3,4,5}; vector 类型 > vi(i , i+2); //得到i索引值为3以后的值 ;   (5)vect
vector::push_back 方法分析
vectorint> intVec1 = { 1, 2 };     intVec1.push_back(3);     intVec1.push_back(4); intVec1.push_back(5);   调用push_back成员函数之前 执行语句 intVec1.push_back(3);之后 可以看到把原来旧值复制到了新分配
c++ vector push_back 出错或者错误
重载拷贝构造函数: class A: thread { public: A() { } A(const A& rhs){ x = rhs.x;}; private: int x; };
c++ <vector> push_back初始化问题
vector是 STL 默认的 变长 的数据类型。 初用c++, 问题描述,在初始化vector的时候,遇到一个问题,push_back初始化之后vector的元素全是0. 主要是 vector c(10); 声明+初始化为10个0 以及 vector c; 声明空的 的区别 初始化还可以 vector c(10,3); 初始化10个3#include <iostream> #
vector的push_back()函数的赋值方式
       vector的push_back()函数的赋值方式是拷贝整个type类型的数据,而不只是拷贝引用(地址),所以不用担心添加局部变量之后会被自动收回。
vector的push_back拷贝构造和空间占用分析
本文同步自:http://zohead.com/archives/vector-push-back-space-copy/ 这两天在实际程序中使用 STL 的 vector push_back 类对象时出现问题,偶尔发现 vector 在 push_back 时的调用类对象的拷贝构造函数和析构函数有点特别,简单做下分析。 程序代码: cat > test.cp
vector调用push_back() 内存泄露的风险
auto_ptr 智能指针不
vector push_back可能出错
最近项目上使用vector发现一个错误,在push_back时存储的数据出错。具体见代码:struct PP { int a; PP(int v) { a = v; } PP(PP &p) { a = - 10; } };