我用的ReSharper在Visual Studio。每當我創建類實例resharper建議我使用var而不是確切類型的類。爲什麼使用var運算符更合適?
2
A
回答
1
對於初學者來說重複性較低。哪一個你更喜歡:
IDictionary<string, object> foo = new SortedDictionary<string, object>();
或
var foo = new SortedDictionary<string, object>();
就個人而言,我覺得後者更具有可讀性。
+2
是的,使用構造函數時。但是var foo = SomeFunction(someparameter);不太可讀。我喜歡以前好多了。 – 2010-09-24 06:42:50
5
ReSharper建議您通過context action使用var。
ReSharper中的上下文動作(通常由鉛筆圖標指定),非常類似於IntelliJ IDEA中的意圖動作,如果您願意,可以使用,但它不是強制性的。這與專門針對解決ReSharper發現的代碼問題的quick-fix(黃色或紅色燈泡)相反。
一次又一次ReSharper用戶在看到ReSharper建議使用var時會驚呆,然後(只要您接受該建議)再次建議使用顯式類型說明符。但是考慮到上下文動作的本質,擁有這種對立的上下文動作是完全正確的,而ReSharper有很多這樣的動作。
如果你不想ReSharper的顯示這個特定背景下的行動,你可以關閉它在ReSharper的>選項> [語言]>上下文行動
相關問題
- 1. 「是」 - 運營商類型
- 2. C++使用,而不是運營商運營商INT()+
- 3. 使用或而不是運營商
- 4. 類型不提供電話運營商
- 5. Bigint類運營商
- 6. String類+運營商
- 7. 類型錯誤:不能使用「在」運營商{}
- 8. 運營商超載的類型
- 9. SSRS:運營商以「 - 」類型上部署
- 10. Linq to sql!運營商爲int類型
- 11. 帶有''''的類型定義運營商
- 12. 運營商新的[]和非POD類型
- 13. 運營商的返回類型+ =超載
- 14. 數類型是不兼容與運營商
- 15. 超載和,或,而不是運營商
- 16. 運營商'!'不能應用於類型'<null>
- 17. 運營商'!'不能應用於long類型的操作數
- 18. 使用與運營商,char數據類型
- 19. Scala |運營商「=>」等這類運營商
- 20. 運營商不能使用?
- 21. 爲什麼我應該使用var而不是類型?
- 22. 調用類運營商直接
- 23. 操作數的數據類型爲varchar是和運營商
- 24. 操作數的數據類型NULL是最大運營商
- 25. 而運營商的使用Jenssegers
- 26. 使用運營商
- 27. 使用「?」運營商
- 28. PHP:爲什麼使用!! $ var而不是(boolean)$ var進行類型轉換?
- 29. LINQ的「序列運營商不支持的類型」異常
- 30. 原型庫使用!!運營商
我注意到,「VAR」是不是*運算符*。它是一個*局部變量類型說明符*。 – 2010-09-24 15:31:52