-11
class C {
public: void c_set(int x){ a = x; }
private: int a;
}
;
class U {
public: void load();
c_loader(int i, int x){ c[i].c_set(x); };
private: vector<C> c(20);
}
;
void U::load() {
int x;
cin >> x >> i;
c_loader(i, x)
}
我真的很困惑這個。我需要在另一個成員函數中調用,但是我的問題是內部類是這些類的向量。我的代碼應該工作,但結果是段錯誤。設定功能cget
有定義。C++在另一個類中調用類的方法向量
最後一行a假設爲x。 – James 2015-03-19 12:00:29
負載應該是U的一種方法嗎? – 2015-03-19 12:04:04
''load()''可以像'public:void load(){...}一樣在內部聲明(也就是在類內部),或者你必須在類名前面加上'void U :: load ){...}'。 'x'未初始化。最後'c'是空的(當你試圖訪問它的成員時會導致段錯誤)。 – TobiMcNamobi 2015-03-19 12:04:58