我声明了一个嵌套类 Element,我想使用创建这样的对象并将其插入一个数组,该数组将 Element 存储在我的 AOSMatrix
类中。我遇到的问题是我不知道应该在我的
push_back
中使用什么
void push_back(int i, int j, double val)
这是我的其余代码: #包括 #包括
using namespace std;
class AOSMatrix {
public:
AOSMatrix(int M, int N) : iRows(M), jCols(N) {}
void push_back(int i, int j, double val) {
assert(i < iRows && i >= 0);
assert(j < jCols && j >= 0);
arrayData.push_back(???);
}
private:
class Element {
public:
int row, col;
double val;
}
int iRows, jCols;
vector<Element> arrayData;
}
最佳答案
您的 Element 类应该有一个构造函数来将字段初始化为:
class Element{
public:
int row, col;
double val;
Element(int row, int col, double val){
this->row = row;
this->col = col;
this->val = val;
}
}
您可以将 vector 中的元素推回:
Element e(i, j, val);
arrayData.push_back(e);
关于c++ - 如何定义嵌套类并使用它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43749997/