C 建構函式裡的base和this的區別

2021-08-11 11:57:19 字數 770 閱讀 3272

class baseclass

", numa);

}public baseclass(int i)

", numa);}}

class childclassa : baseclass

", numb);

}public childclassa(int i)

", numb);

}public childclassa(int i, int j)

:base(i)

", numb);}}

class childclassb : baseclass

", numb);

}public childclassb(int i)

", numb);

}public childclassb(int i, int j)

:this(i)

", numb);

}}

執行的結果如下:

使用base

基類帶乙個引數的建構函式. value:2

子類帶有兩個引數的建構函式. value:4

----------------------------------------

使用this

基類的無引數建構函式. value:0

子類帶有乙個引數的建構函式. value:2

子類帶有兩個引數的建構函式. value:4

C 建構函式裡的base和this的區別

class baseclass numa public baseclass int i numa class childclassa baseclass numb public childclassa int i numb public childclassa int i,int j base i ...

C 建構函式裡的base和this的區別

this只是呼叫本身,但是需要呼叫一次基類無參的建構函式.base是呼叫基類的有引數建構函式。class baseclass numa public baseclass int i numa class childclassa baseclass numb public childclassa in...

C 建構函式裡的base和this的區別

用法一 父類的建構函式總是在子類之前執行的。既先初始化靜態建構函式,後初始化子類建構函式。public class basecircle public basecircle double arg public class subcircle basecircle public subcircle d...