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 如何在類中修改另類的私有資料

將類b宣告為類a的友元類就可以通過物件或者指標修改私有成員了 可以在classa中新增乙個classa set int numa 方法,其實也可以用轉換建構函式來實現,如 classa classa int numa a numa 如果要實現 符合運算子操作,則需過載。 方法一 在a中寫入私有成員的...

C類的公有繼承,基類的私有成員在派生類中不可見或不可訪問,這個不可見或不可訪問是什麼意思

可口可越 外部成員無法訪問內部私有成員。 寒鐵礦 從物理上講是複製過來了,在記憶體中確實有複製。但是從程式上看是被遮蔽了,不能直接呼叫。 淺綠淡淡 簡單的表達一下,父母跟子女。基類就是父母,子女就是派生類。基類的私有成員就好比是父母的私房錢,子女能夠繼承父母的樣貌 即公有成員 但是子女沒法使用父母的...

C 中類怎樣定義,使用,C 中如果要用的類定義在使用之後,該怎樣宣告?

類的定義格式一般地分為說明部分和實現部分。說明部分是用來說明該類中的成員,包含資料成員的說明和成員函式的說明。成員函式是用來對資料成員進行操作的,又稱為 方法 實現部分是用來對成員函式的定義。概括說來,說明部分將告訴使用者 幹什麼 而實現部分是告訴使用者 怎麼幹 類的一般定義格式如下 class 類...