C# default關鍵字
提問人:劉團圓發(fā)布時間:2020-12-08
要確定用于創(chuàng)建泛型類實例的類型,需要了解一個最基本的情況:它們是引用類型還是值類型。若不知道這個情況,就不能用下面的代碼賦予null值:
public MyGenericClass()
{
innerTlObject = null;
}
如果Tl是值類型,則innerTlObject不能取null值,所以這段代碼不會編譯。幸好,開發(fā)人員考慮到了這個問題,使用default關鍵字的新用法解決了它。這I新用法如下:
public MyGenericClass()
(
innarTlObject = default(Tl);
}
其結(jié)果是,如果innerTlObject是引用類型,就給它賦予null值;如果它是值類型,就給它賦予默認值。對于數(shù)字類型,這個默認值是0;而結(jié)構(gòu)根據(jù)其各個成員的類型,以相同的方式初始化為0或null。defcult關鍵字允許對必須使用的類型執(zhí)行更多操作,但為了更進—步,還需要限制所提供的類型。
繼續(xù)查找其他問題的答案?
相關視頻回答
點擊加載更多評論>>