3
這可能是一個非常基本的錯誤,但我對C++很陌生,所以請不要判斷!修改類方法中的私有類變量?
基本上,我有兩個類,如下所示:
class A{
private:
vector< vector<int> > images;
public:
int f1(int X, int Y);
}
class B{
private:
int x;
int y;
public:
int f2(A var);
}
我希望能夠調用B.f2(A)與定義的變量A和B具有F2()調用A.f1 (X,Y)。到目前爲止,所有這些工作。 但函數f1爲f2()返回時不存在的向量'images'賦值。任何想法爲什麼? 下面的代碼:
int A::f1(int X, int Y){
// Some stuff to resize images accordingly
images[X][Y] = 4;
return 0;
}
int B::f2(A var){
var.f1(x, y);
return 0;
}
int main(){
A var1;
B var2;
// Stuff to set var2.x, var2.y
var2.f2(var1);
// HERE: var1.images IS UNCHANGED?
}
也做了工作。謝謝! – eigensheep