vs2019報錯錯誤**:
node::
node
(char _c,
int n, node* _left, node* _right)
:this
->
c(_c)
,num
(n),
left
(_left)
,right
(_right)
正確**:
node::
node
(char _c,
int n, node* _left, node* _right):c
(_c)
,num
(n),
left
(_left)
,right
(_right)
原因:this指標屬於物件,初始化列表在建構函式之前執行,在物件還沒有構造完成前,使用this指標,編譯器無法識別。
參考文獻:
c++建構函式初始化列表中不能使用this指標
建構函式的注意事項
1.description 描述建構函式是建立類物件,並且在建立完成前,對類進行初始化的特殊函式。在類中的表現為,和類名一致。2.attribute 特徵 1 方法名必須和類名一致 2 建構函式木有返回值。一切跟返回值相關的修飾都別寫,也不要用void來修飾!3 建構函式是可以過載的。4 如果不寫建...
列舉 建構函式 注意事項
列舉 定義 列舉是乙個被命名的整形常數的集合,用於宣告一組帶識別符號的常數。類似人的性別 男和女,一周的星期只能是七天中的乙個。類似這種當乙個變數有幾種固定可能的取值時。就可以將它定義為列舉型別。列舉被設計成是單例模式,即列舉型別會由jvm在載入的時候,例項化列舉物件,你在列舉類中定義了多少個就會例...
C 值型別建構函式注意事項
c 語言相比其他支援clr的語言來說,對於值型別的構造有個特殊的地方,即不允許值型別有無引數的建構函式 所以當乙個值型別沒有提供任何建構函式的時候,是不能夠對字段在定義中進行初始化,如下 public struct point 因為對於成員變數申明的同時進行初始化,編譯器會在建構函式中將初始化的 加...