简体   繁体   English

初始化向量 <vector<int> &gt;数据(m,向量 <int> (n))在类矩阵mat(m,n)内

[英]Initializing a vector<vector<int>> data(m, vector<int>(n)) inside a class matrix mat(m,n)

I have to following code: 我必须执行以下代码:

class matrix{
int m,n;
vector<vector<int>> dat(m,vector<int>n);
matrix(int m, int n){this->m=m;this->n=n;}
}

In order to initialize dat, we must already have m and n. 为了初始化dat,我们必须已经有m和n。 I doubt that this would be happening. 我怀疑这会发生。 The error I'm getting is 我得到的错误是

'm' is not a type 'm'不是类型

I cannot seem to figure out how to work around this. 我似乎无法弄清楚如何解决此问题。

Use the member initializer list : 使用成员初始化器列表

class matrix
{
    int m,n;
    vector<vector<int>> dat;

public:
    matrix(int m, int n) : m (m), n(n), dat(m, vector<int>(n))
    {
    }
};

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM