[英]C++ Accessing class variable from another class
我有一個名為 MineData 的類:
class MineData {
private:
int row = 10;
int col = 20;
public:
MineData() {
std::vector<std::vector<int>> data (col, std::vector<int>(row, 0));
}
}
我有一個名為 Grid 的類:
class Grid : public QWidget {
MineData mineData;
QPushButton *btn = new QPushButton(mineData.data, this);
}
所以我想從 MineData 類訪問 Grid 類中的數據變量,但是當我這樣做時
mineData.data
我收到一個錯誤:
“MineData”類沒有“數據”成員
我究竟做錯了什么?
您當前已在MineData
的構造函數MineData
data
聲明為局部變量。 相反,您需要將其設為成員變量。 然后,您可以在初始化列表中實例化它。
class MineData {
private:
int row = 10;
int col = 20;
public:
vector<vector<int>> data;
MineData(): data(col, vector<int>(row, 0)) { }
};
需要將矢量data
添加為類字段。 現在它在MineData
類構造函數中作為臨時變量構造,並在構造函數完成后將其移除。
class MineData {
private:
int row = 10;
int col = 20;
public:
MineData() {
data.resize(col, std::vector<int>(row, 0));
}
std::vector<std::vector<int>> data
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.