二维vector初始化

int a = 2;
int b = 4;
//初始化方法1
std::vector<std::vector<int>> vec(a, std::vector<int> (b));  //2行4列

或者

vector<vector<int>> mark;
for(int i = 0 ; i< nums.size()/*num.size()表示二维数组有多少行*/;i++)
{
    mark.push_back(vector<int>()); //push_back一个一维vector,采用默认构造的方式
    for(int j = 0;j < nums[i].size(); j ++)
    {
        mark[i].push_back(0);  //向其中存放0
    }
}

原文地址:https://www.cnblogs.com/zxj9487/p/11154548.html

时间: 2024-10-05 11:42:21

二维vector初始化的相关文章

C++-二维vector初始化大小方法-备忘

来源: C++——二维vector初始化大小方法 1.直接用初始化方法 名字为vec,大小为n*m,初始值为0的二维vector. vector<vector<int> > vec(n, vector<int>(m, 0)); 2.用resize()来控制大小 vector<vector<int> > vec; vec.resize(n);//n行 for (int i = 0; i < n; ++i){ vec[i].resize(m);

二维vector的初始化

1 #include <iostream> 2 #include <vector> 3 using namespace std; 4 5 int main() 6 { 7 int m, n; 8 cin >> m >> n; 9 vector<vector<int> > value(m, vector<int>(n)); // 两个>用空格分开 10 for (int i = 0; i < m; i++){ 1

动态创建二维vector数组+指针与引用的区别

二维vectorvector<vector <int> > ivec(m ,vector<int>(n));    //m*n的二维vector 动态创建m*n的二维vector方法一:vector<vector <int> > ivec;ivec.resize(m);for(int i=0;i<m;i++) ivec[i].resize(n); 方法二:vector<vector <int> > ivec;ivec

二维vector访问

//  方式1 vector<vector<double> > p1(pt1.size(), vector<double>(2)); // 方式2 vector<vector <double>> ps; vector<double> pp; for(int i = 0; i < pt1.size(); i++) { p1[i][0] = pt1[i].x; p1[i][1] = pt1[i].y; pp.push_back(pt

二维vector容器读取txt坐标

template <class vector> struct HeadLocation{ vector x; vector y; }; vector<HeadLocation<int> > gt_loc_; //二维vector容器 void ReadLocationFromTextFile(const string filename) { cout << "Opening file " << filename <<

C++STL二维vector指定位置排序

自己一直用vector 二维的存储变量 有时候需要进行排序 在此 为记录一下方法 废话少说直接上代码 #include <QCoreApplication> #include <iostream> using namespace std; #include <vector> #include <string> #include <algorithm> #include <QDateTime> #include <QTimer&g

C语言一维数组、二维数组、结构体的初始化

C语言数组的初始化表示方法 一.C语言一维数组初始化: (1)在定义数组时对数组元素赋以初值.如: static int a[10]={0,1,2,3,4,5,6,7,8,9}; 经过上面的定义和初始化后,a[0]=0,a[1]=1,… ,a[9]=9. (2)初始化时可以只对一部分元素赋初值.例如: static int a[10]={0,1,2,3,4}; 定义的数组有10个元素,但只对其中前5个元素赋了初值,后5个元素初值为0. (3)将数组的元素值全部为0,可以用下面的方法:(方法一)

vector&lt;vector&lt;int&gt; &gt;二维容器编程

#include <iostream> #include <vector> using std::cout; using std::endl; using std::vector; template<typename T> void show(const vector<vector<T> > &ivvec); //输出vector<vector<int> >的内容 int main(void) {  vector&

C++ vector 实现二维数组时, 在类的头文件中定义时遇到&quot;应输入类型符&quot;的问题?

见下,当我在类的声明文件中定义二维vector时,提示我应输入类型说明符; 但是相同的格式定义,在类中将二维vector修改为在源文件中定义就可以顺利通过,并顺利执行打印 打印结果如下: 望大神来解惑!