我有兩個類,可以說A類和B類。我的目標是讓這兩個類使用eachothers函數。問題是,多文件包含結構似乎沒有讓我這樣做。這裏就是我想要做的事:使用eachother的C++類
#file A.h
Class A{
public:
int GetInfo();
private:
B * ptrToB;
};
#file B.h
Class B{
public:
int getStuff();
private:
A * ptrToA;
};
我的目標是一個A類方法能夠調用ptrToB->getStuff()
和B類方法能夠調用ptrToA->getInfo()
這可能嗎?怎麼會這樣?如果不是,爲什麼不呢?
其他人指出了讓它編譯的方法,但問問自己爲什麼你的類需要如此耦合。要麼讓它成爲一個班級,要麼把正確的數據放在正確的班級上。不要使用getter。用這些數據告訴班級做正確的事情。查找[數據嫉妒](http://c2.com/cgi/wiki?DataEnvy)等。 –
[相互遞歸類](http://stackoverflow.com/questions/3410637/mutually-recursive-classes) – ecatmur