課程
/后端開發
/C#
/C#面向對象編程
returen default(T);
這一句起到的是什么作用,為什么是在取出的時候使用,裝進去的時候不能使用么
2019-07-24
源自:C#面向對象編程 5-1
正在回答
之所以會用到default關鍵字,是因為需要在不知道類型參數為值類型還是引用類型的情況下,為對象實例賦初值??紤]以下代碼:
class TestDefault<T>
? ? {
? ? ? ? public T foo()
? ? ? ? {
? ? ? ? ? ? T t = null; //???
? ? ? ? ? ? return t;
? ? ? ? }
? ? }
如果我們用int型來綁定泛型參數,那么T就是int型,那么注釋的那一行就變成了 int t = null;顯然這是無意義的。為了解決這一問題,引入了default關鍵字:
? ? ? ? ? ? ? ? return default(T);
? ?}
舉報
本系列教程主要是,帶你學習C#面向對象編程的編程思想、編程技巧
1 回答關于if的問題
2 回答關于接口的問題
1 回答關于接口的問題
2 回答關于接口問題
2 回答關于C#面向對象問題
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2019-07-30
之所以會用到default關鍵字,是因為需要在不知道類型參數為值類型還是引用類型的情況下,為對象實例賦初值??紤]以下代碼:
class TestDefault<T>
? ? {
? ? ? ? public T foo()
? ? ? ? {
? ? ? ? ? ? T t = null; //???
? ? ? ? ? ? return t;
? ? ? ? }
? ? }
如果我們用int型來綁定泛型參數,那么T就是int型,那么注釋的那一行就變成了 int t = null;顯然這是無意義的。為了解決這一問題,引入了default關鍵字:
class TestDefault<T>
? ? {
? ? ? ? public T foo()
? ? ? ? {
? ? ? ? ? ? ? ? return default(T);
? ? ? ? }
? ?}