【发布时间】:2018-01-08 19:34:07
【问题描述】:
我正在查看 Stack Overflow 上的一个答案,以便为 2d 矢量创建一个类。解决方案涉及在创建外部向量的同时初始化内部向量。
class A{
public:
A(int dim1,int dim2):v(dim1,std::vector<int>(dim2)){}
private:
std::vector< std::vector<int> > v;
};
class A{
public:
A(int dim1,int dim2){v.resize(dim1,std::vector<int>(dim2));}
private:
std::vector< std::vector<int> > v;
};
我知道向量可以这样初始化
size=4; value =10; std::vector<int> A (size,value);
但是,对于如何在缺少变量对象的情况下像 std::vector (size) 那样初始化向量,我没有直观的感觉,就像在初始代码 sn-p 中设置 dim2 时发生的那样。我错过了什么吗?
【问题讨论】:
-
I was looking at one of the answers on Stack Overflow哪一个?链接它。 -
既然你也打电话给
resize,look at the docs here。注意到第二个参数了吗? -
@PaulMcKenzie 在我看来,OP 正试图理解构造函数 (3)。