自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

C#隱式類型局部變量經(jīng)驗總結(jié)

開發(fā) 后端
這里介紹C#隱式類型局部變量,既然是局部變量,那么它就只能用在方法內(nèi)部了,注意C#是強類型的,引入了一個var并不是像 javascript那樣,變成了一個弱類型的語言。
C#語言有很多值得學習的地方,這里我們主要介紹C#隱式類型局部變量,包括介紹C#匿名類型等方面。

C#隱式類型局部變量

還是先介紹一下C#隱式類型局部變量吧:

在C# 3.0里多了一個關(guān)鍵字var,他表示這樣的一種類型:C#編譯器可以根據(jù)上下文推斷的出來比如var I = 5;編譯器可以根據(jù)后面的賦值推斷的出來i應該是個整型。既然是局部變量,那么它就只能用在方法內(nèi)部了,注意C#是強類型的,引入了一個var并不是像 javascript那樣,變成了一個弱類型的語言。在編譯器***次編譯后var就會被確定的類型所替代的。所以對于C#隱式類型局部變量要注意以下幾點:

1.它只能存在于方法內(nèi)部

2.它不是一個新的類型,只是一個關(guān)鍵字,或者叫做一個占位符,在C#編譯器編譯后它就會被確定的類型所替代

3.它是編譯器根據(jù)上下文推斷出來的,所以所有一切不能被編譯器推斷出來的用法都是錯誤的。比如不能這樣使用:var nullValue = null;因為null啥也不是,他是一個空指針,是一個不確定的東西。也不能這樣使用:var I = 5;I = “abc”;編譯器根據(jù)***個賦值會推斷出它是一個整型,但是隨后又將一個字符串賦值給它,這是怎么回事呢?

對于var我的建議是不到逼不得已的時候不用,那什么是逼不得已呢?來看我們的匿名類型吧。

由于匿名類型在我們編寫代碼的時候并不存在,所以匿名類型也不能作為方法的返回值和參數(shù)了。”var”一樣,也是只能在方法內(nèi)部使用?,F(xiàn)在是不是有點明白什么時候才是逼不得已使用”var”???就是在使用匿名類型的時候,匿名類型編譯器可以推斷出來,但是靠人工又無法推斷了。所以我覺得只在編譯器可推斷而人不可推斷的時候才使用C#隱式類型局部變量,靠我們?nèi)斯た梢酝茢嗟倪€是不建議使用,顯式的聲明變量類型可以增強代碼的可讀性,這是一個好的編程習慣,不要因為C# 3.0提供了這樣的特性就大用而特用。

【編輯推薦】

  1. C# lock關(guān)鍵字敘述
  2. C#.Net FrameWork簡介
  3. C# new和override簡單描述
  4. C#值類型和引用類型淺談
  5. C#標識符簡單分析
責任編輯:佚名 來源: 博客園
相關(guān)推薦

2009-09-11 10:07:05

Linq隱式類型化局部

2009-08-27 10:08:36

C#隱含類型局部變量

2010-01-20 10:27:07

VB.NET隱式類型局

2009-08-26 16:37:07

C#迭代器局部變量

2009-08-13 18:13:27

C#學習經(jīng)驗

2009-08-11 14:20:41

C# .NET學習經(jīng)驗

2009-08-24 14:56:01

C#連接Access

2009-08-21 17:42:36

C#調(diào)用API

2009-09-02 14:14:44

C# COM接口轉(zhuǎn)換

2009-09-01 13:10:39

C#讀取Word

2009-08-27 11:21:36

C# override

2009-09-17 13:05:38

Linq局部變量類型

2009-09-01 13:00:05

C#實現(xiàn)Windows

2009-08-07 09:47:17

C#枚舉C#數(shù)組

2009-09-18 10:21:13

C#數(shù)組C#串操作

2009-09-01 10:49:28

C#具有隱式類型聲明

2009-08-27 15:45:30

C#正則表達式

2009-10-15 13:06:12

VB.NET Shar

2009-08-14 11:34:26

Mono C#編譯器

2009-09-03 13:48:20

C#實現(xiàn)Web服務器功
點贊
收藏

51CTO技術(shù)棧公眾號