如果我有一个N x N的矩阵
vector< vector<int> > A;
我该如何初始化它?
我尝试了但没有成功:
A = new vector(dimension);
都不是:
A = new vector(dimension,vector<int>(dimension));
如果我有一个N x N的矩阵
vector< vector<int> > A;
我该如何初始化它?
我尝试了但没有成功:
A = new vector(dimension);
都不是:
A = new vector(dimension,vector<int>(dimension));
使用new
进行动态分配内存,它会返回一个指向动态分配对象的指针。
由于A
是自动变量,因此您没有理由使用new
。您可以直接使用构造函数初始化A
:
vector<vector<int> > A(dimension, vector<int>(dimension));
myStructVble->A = vector<vector<int>>(dimension, vector<int>(dimension));
- Joseph Mansfield像这样:
#include <vector>
// ...
std::vector<std::vector<int>> A(dimension, std::vector<int>(dimension));
(在C++11之前,你需要在尖括号之间留下空格。)