C 靜態資料成員初始化及靜態函式成員

2021-09-19 17:27:50 字數 721 閱讀 8808

1.定義靜態資料成員後要對靜態資料成員進行初始化!

靜態資料成員的初始化:

《資料型別》《類名》::靜態資料成員 = 《值》

2.靜態資料成員往往數私有的,靜態資料成員不能直接訪問,要通過定義為公有的靜態函式成員來訪問靜態資料成員。

3.靜態函式成員介面實現時在前面不加 static 字首。

4.靜態函式成員,不能直接訪問非靜態資料成員,除非通過物件名來訪問該物件的非靜態資料成員。

部分**描述:

定義貨物類,私有成員有貨物重量,貨物總重量(靜態資料成員),初始化靜態資料成員。

static int gettotalweight();不能直接訪問 weight

#include

using namespace std;

class tgoods

;//△《資料型別》《類名》::《靜態資料成員名》=《值》

int tgoods:

:totalweight =0;

tgoods:

:tgoods

(int w)

tgoods::~

tgoods()

tgoods:

:getweight()

int tgoods:

:gettotalweight()

intmain()

C 靜態成員初始化

在c 類中,靜態成員一般不允許在類宣告中進行初始化,應該在類的外部進行初始化,例如 class a static int a a 0 初始化方式 void main void 但是有乙個例外,可以為靜態成員提供const 整數型別的類內初始值。要求靜態成員必須是字面值常量型別的constexpr 因...

C 靜態成員 靜態資料成員和靜態函式成員

由關鍵字static修飾說明的類成員,成為靜態類成員 static class member 包括 靜態資料成員和靜態函式成員。類的靜態成員為其所有物件共享,不管有多少物件,靜態成員只有乙份存於公用記憶體中。雖然使用static修飾說明,但與函式中的靜態變數有明顯差異。在類定義中,用關鍵字stati...

c 靜態函式和靜態成員

靜態函式 在類內宣告static,在類外定義時不能再用static,靜態函式可以訪問類的靜態物件。靜態物件 靜態物件不屬於任何乙個物件,所以他們並不是在建立類的物件時被定義的,也就是不能被建構函式初始化。要想定義全域性變數一樣定義靜態物件。生命週期和全域性變數一樣。通常,為了防止物件多次定義,最好把...