回答
List<T>
是一個參考類型(類),所以沒有?
是必需的。只需在方法體中分配null
到ExClass
參數。
另一種方法是在列表或空列表中包含0(零)個元素。 – Sharique 2011-10-31 11:38:34
安東說,你並不需要使用Nullable<T>
- 但它肯定會是一個out
參數:
private void Test(out List<ExampleClass> foo)
有可能你混淆一個可空List<T>
與List<T?>
這將是有效的值類型...例如,您可以使用:
private void Test(out List<Guid?> foo)
這將是一個out參數,它是一個可爲空的guid列表。
另一方面,在void
方法中通常不需要out
參數 - 您通常應該將其用作返回類型。
感謝喬恩。所示的方法只是一個例子,並感謝您提供解釋。 – Trent 2010-02-08 11:17:10
使用?
僅用於可爲空的ValueTypes。
作爲out
參數與否與此無關。但是你不能在課堂上做一個Nullable<T>
; T
必須是一個結構。否則編譯器會抱怨。
除此之外,大寫參數名稱(使用exClass
而不是ExClass
)被認爲是不好的樣式。你的程序工作原理是一樣的,但任何讀你代碼的人都可能被誤導。
- 1. 爲什麼我不能寫Nullable <Nullable <int>>?
- 2. 將std :: list <boost::any>作爲參數傳遞給函數
- 3. 讓AsyncTask有一個List <NameValuePair>作爲參數
- 4. Spring MVC Controller List <MyClass>作爲參數
- 5. 「Convert.ToString(Nullable <int>)」和「Nullable <int> .ToString()」之間的區別?
- 6. 如何將List <Identifier <Foo>>傳遞給List <Identifier <?>>參數的方法?
- 7. IList <InterfaceType>爲List <ImplementsInterfaceType>?
- 8. Powershell參數列表傳遞像-a <args list> -d <args list>
- 9. 如何將List <DerivedClass>分配給IEnumerable <BaseClass>參數?
- 10. 使用參數「List <Class <? extends Object >>「
- 11. 爲什麼Nullable <>不隱藏GetType?
- 12. LINQ IQueryable with List <string>輸入參數
- 13. Casting List <Concrete> to List <InheritedInterface> without .ToList()複製操作
- 14. 字典用List <>作爲TValue
- 15. 什麼是Nullable <T>?
- 16. 序列化導出爲ICollection <>到XML的List <>
- 17. LINQ2SQL表:表<fieldname>作爲參數
- 18. 問題與LINQ查詢輸出轉換爲List <>在asp.net
- 19. 獲得[]爲IEnumerable字符串的輸出參數<string>
- 20. IList <IWhatever>作爲方法參數
- 21. 爲什麼是List <>。OrderBy LINQ比IComparable + List <>更快。
- 22. List <Tuple<T1,T2>>作爲GridView的DataSource
- 23. IDictionary <String,List <OpenXmlCompositeElement >> - 獲取List <OpenXmlCompositeElement>?
- 24. List <Map <String,String >> vs List <Object>
- 25. List <Map <String,List <>>> in BaseAdapter,Android
- 26. 將<s>和</s>作爲android pocketsphinx的輸出
- 27. 如何從List <>
- 28. Cast ISomeInterface <Nullable <bool>> to ISomeInterface <object>
- 29. ObjectResult <Nullable <DateTime>> to IEnumerable <DateTime>?
- 30. 爲什麼我不能做列表<X<Long>>作爲列表的參數<X<?>>
由於您已經編寫了代碼,爲什麼不自己嘗試呢? – stakx 2011-08-28 12:15:00