C 中,類的私有資料成員在定義的時候不能進行初始化嗎

時間 2021-07-04 07:40:13

1樓:四舍**入

是的,c++中類的資料成員不管是不是私有的,都不能進行初始化。

因為類就相當於一個資料的模板,是一種自定義組合的新資料型別,而不是一個變數。當程式宣告一個類的時候,事實上並沒有為程式申請儲存空間,只有用這個類定義一個類物件的時候,才申請空間。連空間都沒有,當然不能像定義變數一樣的初始化了。

2樓:翲燚

靜態私有成員不可以,非靜態私有成員可以。

class a ;

3樓:

可以。不過你說的這個在定義的時候我不明白是什麼意思,是指類物件被建立的時候?類物件被建立的時候會自動呼叫該類的初始化函式,你想初始化私有成員變數只需要把它們的定義寫在初始化函式裡面就行了。

4樓:匿名使用者

別說是私有,就連公有以及保護都是不能初始化的,初始化要不在建構函式中進行。

5樓:匿名使用者

在c++中,類的資料成員就不能在定義的時候初始化,除非它是靜態的。c++中你在定義類的時候寫的是宣告。所以想初始化就上建構函式吧。

6樓:匿名使用者

這個分編譯器的不同而不同,在部分比較新的編譯器中(例如vs2015)就可以在定義時進行初始化。

7樓:匿名使用者

不能,c++的類的成員變數都不能在定義的時候進行初始化。

只有被宣告為static的才可以

8樓:

。。。。。

1 類的私有成員和初始化有什麼關係

2 初始化一般是建立物件的時候,建構函式進行初始化。

9樓:

我用vs2010不支援直接寫初始化值,用qt5.5就可以。為了通用,還是寫到建構函式裡吧。

10樓:匿名使用者

可以使用建構函式初始化類私有成員。

11樓:匿名使用者

不可以,要不然建構函式幹什麼吃的。

C 類的公有繼承,基類的私有成員在派生類中不可見或不可訪問

3月21日晴 在c 語言中,一個派生類可以從一個基類派生,也可以從多個基類派生。從一個基類派生的繼承稱為單繼承 從多個基類派生的繼承稱為多繼承。方式如下 公有繼承 public 私有繼承 private 保護繼承 protected 是常用的三種繼承方式。1.公有繼承 public 公有繼承的特點是...

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

曾聽南 類的靜態成員函式不與任何物件相聯絡,它可以直接訪問類的靜態資料成員,而不能直接訪問類的普通資料成員 即非靜態資料成員 因為普通資料成員只有類的物件存在時才有意義。c中的靜態函式只在本檔案中有效。 血天藍海 如果是靜態函式 static 型別 函式名 形參 這樣的函式 它可以被 類名 函式名 ...

c 中可不可以在類中訪問另類的私有成員

a羅網天下 c 中可以在一個類中訪問另一個類的私有成員,通過定義友元類即可實現。class node public node int data 0 mdata data mpnext null private int mdata node mpnext friend class link 友元類本質...