在C++編程的時候,我很喜歡代默認參數的構造函數,但在C#里,不支持默認參數的構造函數,但有另外一個辦法去實現他,就是構造函數初始化器。初始化器將調用最匹配的構造函數,然后返回最初調用的構造函數繼續執行構造。例如:
class A
{
private:
int style;
string name;
public void A()
{
style=0;
strName="A";
}
public void A(string name):this(name,5)
{
// 這里將先執行下面的構造函數,然后返回這里繼續執行
}
public void A(string name,int style)
{
this.name=name;// 這里說明了同名的變量可以通過this指針來區分作用域
this.style=style;
}
}
|