Re: C++ overriding/overriding的問題

看板Programming作者 (陳揚和)時間18年前 (2008/02/13 16:39), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串3/8 (看更多)
非常感謝好人大大 如你所說.問題一要避免佔空間的方法總是有的吧 這樣的問題應該非常常見 (比如說用指標 需要才new.. new新的 或有其他方法) 至於問題二 我其實要的是class B::m(char c)去call B::m(int i) 而希望call 到A::m(int i) 但是編譯的時候就會有錯 ※ 引述《ya790206 (殘雲奪月)》之銘言: : 問題一, : X還是會佔空間 : 實驗: : class A : { : int x; : }; : class B : { : char x; : }; : printf("%d %d\n",sizeof(A),sizeof(B)) : 結果是4 1 : 改成 : class A : { : int x; : }; : class B:public A : { : char x; : }; : 結果是4 8 : 為何是八之前有人問過,不過我不懂 : DevC++的結果 : 問題二 : 因為你在B類別定義了m(char *) : 他overriding了m(int ) : 所以類別B沒m(int ) : 你要呼叫類別A的m(int )須用 : A::m(5); : 有錯請指教 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 128.125.87.33
文章代碼(AID): #17igoaf9 (Programming)
文章代碼(AID): #17igoaf9 (Programming)