C 中的派生類,可以不定義物件直接呼叫基類的成員和呼叫自己的成員函式嘛

2021-04-22 23:12:00 字數 625 閱讀 5785

1樓:匿名使用者

如果你想呼叫的來函式是基源類的靜態成員函bai

數,不定義派生類對

du象是zhi可以呼叫的,格式:base::fun();因為靜態dao成員並不是類的某個物件的成員,而是所有該類的物件所共享的。

通過類名就可以直接訪問。如果你想呼叫的不是靜態函式,不定義派生類物件是不可能的。因為你呼叫的成員函式可能會訪問到類的資料成員,而你沒有定義一個物件,也就沒有呼叫類的建構函式,也就沒有對資料成員進行初始化。

所以說必須通過類的物件來訪問其非靜態成員函式。

2樓:軟式曲奇餅

假設基類是 cbase

那呼叫基類成員函式foo()就是 cbase::foo();

呼叫當前類的成員函式方法是 this->foo();

3樓:匿名使用者

不可以吧,本人沒試過。因為你沒有定義物件的話,就無法獲得函式入口。。。static函式或許可以,自己試一下就行~~不定義物件,就相當於沒定義實體,卻要求長寬高,道理一樣。。。

4樓:匿名使用者

在類裡面定義的時候可以呼叫自己的成員函式

和父類的public和protected的函式

c基類中的成員函式的引數是派生類怎麼辦

先宣告派生類,將成員函式引數設為派生類的引用 include using namespace std class b class a int main 不知道你是不是要問這個 那還放在基類搞什麼,不如弄成虛擬函式。c 中派生類如何使用基類中的資料成員 如果你是派生類例項,這個結果是正確的,派生後會覆...

c中,基類是抽象類(有純虛擬函式),在派生類(公有繼承)中,能不能呼叫初始化基類物件

能呼叫如果創bai建物件是b b 2,3 那du麼就會執行b int m,int n 0 這個zhi建構函式dao,進而顯式呼叫了基類a的構專造函式a int a 因屬為初始化列表裡寫明瞭a m 構造方式 假如沒有這個a m 語句,那麼就會呼叫a的預設建構函式,但a裡沒有寫a 所以就會報錯 沒有適合...

C如何定義類型別的陣列,C 中如何定義類的陣列,以及給他們賦值?

student 學生物件的陣列 liststu new list 學生物件的集合 c 中自定義類陣列和結構陣列的使用 發現很多時候給定的陣列要實現某個邏輯或處理很是麻煩,一維陣列,二維陣列,等等需要經過n多轉換,還不如自己寫一個自定義陣列,既方便又節省時間,以下是類陣列,其實相當於定義了一個實體類一...