#include “B.h”
Class A
{
public;
B b;
void setXXX(init n);
}
Class B
{
//隨意
}
請問 如何在Class B中呼叫A的方法 void setXXX(init n);
uj5u.com熱心網友回復:
A::setXXX(0); //?
uj5u.com熱心網友回復:
B都不認識A 的, 不行
uj5u.com熱心網友回復:
面向物件只是一種編程思想。再抽象的編程語言,最后不都變成匯編代碼了嗎?我們完全可以說匯編語言是面向物件、腳本化、動態化、泛函化、并行化、分布化的語言。
《深度探索C++物件模型》
《C++反匯編與逆向分析技術揭秘》
uj5u.com熱心網友回復:

Class B中呼叫A的方法 ,要么把A的setXXX 搞成靜態函式,那么直接A::setXXX 到處呼叫了。
要么B繼承A,自動獲得A的方法屬性。試試不就知道了
uj5u.com熱心網友回復:
public:B(A* pObj){}
~B()
把A物件的指標傳過去就行了。
uj5u.com熱心網友回復:
A中初始化B物件的時候在A的建構式中初始化,B b換成B* m_pObjB宣告 A::A(){m_pObjB = new B(this);}
uj5u.com熱心網友回復:
其實
類B 就是個Dlg
我本來也是 B *b 指標宣告的,
只不過不是A的建構式中new,
你特意強調在A的初始化函式中 new出來, 跟在其他地方new有區別嗎?
uj5u.com熱心網友回復:
沒區別,主要看你初始化的時機是否會影響你的代碼邏輯。
uj5u.com熱心網友回復:
A中初始化的B,只能在A中 A是包含B,如果A和B是分開的呢uj5u.com熱心網友回復:
B類中定義A類的指標變數~轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/79672.html
標籤:基礎類
