c 中如何給類的私有成員賦值?

時間 2021-05-12 00:23:17

1樓:zhLzm

最好的是通過建構函式給類的私有成員進行初始化(可以有多種初始化建構函式),如果需要在操作中設定某個私有變數基於C++類的封裝特性,最好編寫一個函式去修改需要改變的成員產量。

2樓:王祺

假設你的類在a.h中

C 中類B需要訪問類A的私有成員變數,除了將B宣告為A的友元類外還有其它方法嗎?

春秋代序 友元函式可不可以呢。將類B的成員函式宣告為類A的友元函式,這樣的話比整個類宣告為友元類更安全一點。現在初學c 的大學生應該都會想到教材的友元成員函式這種簡單方法吧,不知道樓主是不是這個意思,如果樓主是所有友元方法都不想用,那就打擾了 陳俊皓 紙上談兵的方法是,讓類的乙個公共成員函式返回這個...

C 中指向類成員指標的賦值副本用做模板引數為什麼不行?

因為這是語法。在C 11,只允許乙個指向成員的表示式 constexpr 作為模板引數,也就是 AA i 而不允許使用 pi.同時,正在擬定的新標準的草稿中對這個語法做出了改變。現在模板引數只需要乙個已經轉換成constant expression 的型別。所以在正在擬定的新標準中,題主的寫法是可以...

C 中類的資料成員(data member)能出現未初始化(uninitialized)的狀態嗎?

1.如果在乙個函式類定義,那麼在這兩個類裡的資料成員都未初始化,都是不確定的值。如果是在全域性空間定義,那built in type就是預設值,類就是預設構造的。你可以自己列印出來看看 2.是不是 class type 在進行預設初始化的時候遞迴呼叫父類的建構函式,而且類中的資料成員也按照規則進行初...