我有一個類真的很複雜,它有另一個類的向量。我報告一個更簡單,無論如何它有我已經能夠找到的問題。複製特定類時崩潰
// the inner class
class DuffyDuck{
int isblack; // 0 is white, 1 is black
int n_duck;
vector<DuffyDuck> * point_Duck;
public:
DuffyDuck(int isblack):isblack(isblack){
}
void set_point(vector<DuffyDuck> & Abitants){
point_Duck=&Abitants;
}
};
// the complessive class
class DuckCity{
vector<DuffyDuck> DuckAbitants;
public:
DuckCity(int numwhite,int numblack){
for(int i=0;i<(numblack+numwhite);++i){
DuckAbitants.push_back(DuffyDuck(i>=numblack));
DuckAbitants[i].set_point(DuckAbitants);
}
}
};
現在這個工作(我用point_Duck幾個功能),但如果我做這樣的事情後顯示一次,它被稱爲例如「(* point_Duck)[2] .n_duck;」在一個函數中,項目崩潰。
這隻會發生,如果我這樣做:
DuckCity LittleTown(0,0);
LittleTown=DuckCity(3,5);
而且使用一些功能,這稱之爲指針之後。
如果我直接做LittleTown(3,5)都是對的。
我希望我解釋得不錯。
只是一個一般的建議:在你的縮進工作!就目前來看,幾乎沒有任何縮進讓你的代碼真的難以閱讀。 – JustSid
學校開學了嗎? – INS
@JustSid現在好點了嗎?我真的不明白如何縮進! –