C 簡單問題。我有個類A,裡面有個成員函式。還有類B。如何用A中的成員函式來建立B的例項

2021-04-19 08:29:19 字數 1001 閱讀 8758

1樓:拉里楊

編譯器在你的來main函式裡面發現源

可乙個"a",但是它不知道這個"a"是什麼,所以給你報錯說"undeclared identifier",這是當然的,因為你根本沒有定義"a"。

那麼你可能會說你在void b::create()的實現中寫了乙個"a",不僅寫了,你還申明它是a類的靜態物件,不過這與你在main函式裡面寫的那個"a"毫無關係。

你的問題可能是:先用b類的乙個物件呼叫b類的成員函式,這個函式中有乙個a類的靜態物件,然後在外部呼叫這個物件,這在邏輯上很詭異。

不過你若真想這麼做,那麼可以如此:

將b類的void create(void)函式改為:

a* create(void)

然後修改main函式中改為:

void main()

2樓:賈佳甜

void main()

不知道是不是這個意思

3樓:匿名使用者

在a類中申明b為友員類。

friend class b;

c++語言,乙個類a成員中中包含另乙個類b 的物件,但類b程式在類a 的後面,因此編譯a時無法識別

4樓:

假如bai類a中包含乙個靜態的類

dub的成員變數:

在a.h(a的聲zhi明檔案中dao進行宣告)內:class a

;在a.cpp(a的實現容檔案中定義b):

b a::b; //這裡可以用b的建構函式初始化b

c++中,我定義乙個類a,資料成員有a,然後裡面定義乙個虛函式x而且是const常函式(作用ret

5樓:天海一月

1、呼叫的是各自的x函式(虛函式的性質,有自身的執行自身的,沒有話,執行的父類)

2、常成員函式不能改變成員變數的值,但是可以訪問成員變數,所以是可以返回兩個成員變數的和的

簡單的C語言問題,2個簡單的C語言問題

include void main outa 100 i for i 0 i 9 i outa i 1 a i for i 0 i 10 i a i outa i for i 0 i 10 i printf d a i 第二個 include void main b i 0 c i 5 0 for ...

簡單的C語言問題,乙個簡單的C語言問題

指標型別就是陣列名。b a就是把a 的陣列名賦值給了 b,則 b就儲存了a陣列。因為是b 所以先賦值陣列a給b 然後,b再自加。則b就為1.因為 b已經儲存了陣列a,所以 b的頭位址開始從陣列a 1 儲存,此時 b 20,30,40,50 因為運算優先順序是單目運算子高,所以先運算 所以,事實上 b...

5000裡面有個百,5000裡面有個千,有個百,有個十

5000裡面有 50 個百 理由 5000 50 100。100 900共九個百 5000裡面有 個千,有 個百,有 個十 5000裡面有5個千,有0個百,有0個十 故答案為 5,0,0,5000裡面有幾個十,幾個百?二年級 5000裡面有500個十,50個百 5000裡有500個十,50個 500...