C 中類的成員函式定義成static與C中的static的函式有什麼不同

時間 2021-08-30 10:38:27

1樓:曾聽南

類的靜態成員函式不與任何物件相聯絡,它可以直接訪問類的靜態資料成員,而不能直接訪問類的普通資料成員(即非靜態資料成員),因為普通資料成員只有類的物件存在時才有意義。

c中的靜態函式只在本檔案中有效。

2樓:血天藍海

如果是靜態函式 static 型別 函式名(形參){}這樣的函式 它可以被 類名::函式名(引數)呼叫

也可以被 物件.函式名(引數)呼叫

如果是靜態變數 static int a;這樣的類裡面的 是所以物件共享的一個變數 可以改變 使用前必須初始化 初始化 int 類名::a=0; 賦值 在類函式中a=10; 只能本檔案使用 樓主應該懂了吧...別聽樓上的說不能賦值...

3樓:維樂的原創**小課堂

不是吧,記得static靜態成員的說明是

所有的該類的物件共用這一個成員,直接用類名訪問就可以初始化的時候必須在類外初始化

只在本檔案中使用的那個,應該是私有吧……………………

4樓:匿名使用者

靜態函式:

定義一個靜態函式,只需在函式型別前再加一個「static」關鍵字即可,如下所示:

static 函式型別 函式名(函式參數列)

關鍵字「static」的含義不是指儲存方式,而是指對函式的作用域僅侷限於本檔案。

使用靜態函式的好處是:不同的人編寫不同的函式時,不用擔心自己定義的函式,是否會與其它檔案中的函式同名,因為同名也沒有關係。

靜態資料成員:

在類中定義一個靜態資料成員(定義時必須初始化!),這個資料成員就不能再次賦值,只能表示式運算!如:static int a=10;如果再次賦值:a=20;就會報錯!

如果程式設計時,一些變數不想讓使用者更改,就可以定義靜態資料成員。一般編寫大型程式,都有很多靜態資料成員!

c++中定義的類,成員函式可以直接使用嗎?

5樓:匿名使用者

沒有物件的時候要訪問類成員函式的話,只能訪問靜態成員函式。例如:

class a

}這樣可以在主函式裡直接用

a::abc();

這樣的語句進行呼叫。

c如何在類外定義成員函式,C 如何在類外定義成員函式

定復 c 不完全是物件導向的 c 是完全物件導向的肯定要包含到類裡的,c 的那種用法就別想了我覺得,如果一個人的五臟都出了體外了,那這人還能活嗎 胡說的例子而已 見笑了 一 類與結構的示例比較 結構示例 public struct person 類示例 public class testtime 呼...

c判斷題定義在類內的成員函式是行內函數定義

錯誤!行內函數的定義如下 行內函數是使用inline關鍵字宣告的函式,也成內嵌函式,它主要的作用是解決程式的執行效率。只有inline這個關鍵字包含在函式宣告中,才是行內函數。與類沒有任何的關係!舉例 static inline int max int a,int b c 中怎麼理解類內定義的成員函...

C 中類的定義可以巢狀嗎,c 中函式的定義和呼叫都可以巢狀嗎

芃芃 1 類的定義是可以巢狀的 2 在函式中可以定義類,但是意義不大,因為在函式中定義類,你只能在這個函式中使用這個類,其他的函式是沒法用的,所以一般不會把類的定義放在函式中,但是這並沒有錯,能編譯過,也就是說作用域只在函式。 周德群 不行,在函式中不能定義類,類可以包含函式,但是函式不可能包含類,...