原文連線
c#關鍵字是伴隨著.net 3.5以後,伴隨著匿名函式、linq而來, 由編譯器幫我們推斷具體的型別。總體來說,當乙個變數是區域性變數(不包括類級別的變數),並且在宣告的時候初始化,是使用var關鍵字的前提。具體什麼時候使用,什麼時候不使用,以下是個人淺見。
1、宣告匿名函式時使用var關鍵字
var temp = new ;
2、linq投影出匿名函式結果時使用var關鍵字
var temp = from p in products
where p.name =="sth"
select new ;
3、型別很明確時使用var關鍵字
var string = "" ;
var result = new list();
以上,可以很明顯從等號右邊推斷出型別,可以考慮使用var關鍵字。
4、型別不明確時慎用var關鍵字
var result = productrepository.getproducts();
以上,如果使用var關鍵字,在可讀性上就差了一點。
C 中var關鍵字用法 收藏
var關鍵字是c 3.0開始新增的特性,稱為推斷型別 可以賦予區域性變數推斷 型別 var 而不是顯式型別。var 關鍵字指示編譯器根據初始化語句右側的表示式推斷變數的型別。推斷型別可以是內建型別 匿名型別 使用者定義型別 net framework 類庫中定義的型別或任何表示式。上面的資料有點抽象...
C 中的var關鍵字
var 是3.5新出的乙個定義變數的型別 其實也就是弱化型別的定義 var可代替任何型別 編譯器會根據上下文來判斷你到底是想用什麼型別的 至於什麼情況下用到var 我想就是你無法確定自己將用的是什麼型別 就可以使用var 類似 object 但是效率比object高點。或者通俗的講 var可以理解為...
C 中的var關鍵字
c 中的var關鍵字 var 是3.5新出的乙個定義變數的型別 其實也就是弱化型別的定義 var可代替任何型別 編譯器會根據上下文來判斷你到底是想用什麼型別的 至於什麼情況下用到var 我想就是你無法確定自己將用的是什麼型別 就可以使用var 類似 object 但是效率比object高點。或者通俗...