国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

C#具有隱式類型聲明描述

開發 后端
這里介紹C#具有隱式類型聲明,在C# 3.0中可以使用新增的關鍵字var來代替聲明中的類型,而由編譯器根據初始化表達式來推斷出變量的類型。

本文向大家介紹C#具有隱式類型聲明,可能好多人還不知道隱式類型聲明,沒有關系,看完本文你肯定有不少收獲,希望本文能教會你更多東西。

C#具有隱式類型聲明

在一個帶有初始化器的聲明語句中,待聲明的變量的類型是顯而易見的——和初始化表達式的結果類型一致。對于這種情況,在C# 3.0中可以使用新增的關鍵字var來代替聲明中的類型,而由編譯器根據初始化表達式來推斷出變量的類型。

  1. var i = 5; // int  
  2. var d = 9.0; // double  
  3. var s = "Hello"; // string  
  4. var a = new int[] { 1, 2, 3, 4, 5 }; // int[]  
  5.  
  6. Console.WriteLine("Type of variable <i>: {0}", i.GetType());  
  7. Console.WriteLine("Type of variable <d>: {0}", d.GetType());  
  8. Console.WriteLine("Type of variable <s>: {0}", s.GetType());  
  9. Console.WriteLine("Type of variable <a>: {0}", a.GetType()); 

上面的代碼在C# 3.0中是符合語法規則的,前四行代碼就是使用了隱式類型的聲明;而后四行代碼用于在運行時驗證各個變量是否擁有正確的類型。如果在Visual Studio 2005中運行這段代碼(為了能夠看到結果,請使用Ctrl+F5來編譯并啟動程序),會得到下面的結果:

  1. Type of variable <i>: System.Int32  
  2. Type of variable <d>: System.Double  
  3. Type of variable <s>: System.String  
  4. Type of variable <a>: System.Int32[] 

這表明,編譯器在編譯的時候,已經正確地推斷了每個變量的類型,并將其嵌入到了程序集的元數據中。

這里有兩個限制,一是C#具有隱式類型聲明只能作用在局部變量上,二是這種聲明必須有初始化器(即等號和后面的表達式)。如果我們企圖在一個類中聲明一個具有隱式類型的域,就會出現一個編譯錯誤:Invalid token ’var’ in class, struct, or interface member declaration;而如果聲明中沒有出現初始化器,則會導致另外一個編譯錯誤:’=’ expected。

除了局部變量外,作用域為一個塊的數組也可以運用C#具有隱式類型聲明,例如:

  1. var ia = new [] { 1, 2, 3, 4, 5 }; // int[]  
  2. var da = new [] { 1.1, 2, 3, 4, 5 }; // double[]  
  3. var sa = new [] { "Hello", "World" }; // string[]  
  4.  
  5. Console.WriteLine("Type of array <ia>: {0}", ia.GetType());  
  6. Console.WriteLine("Type of array <da>: {0}", da.GetType());  
  7. Console.WriteLine("Type of array <sa>: {0}", sa.GetType()); 

在上面例子的數組聲明中,在運算符new和表示數組聲明的一對方括號之間省略了類型名字,但這在C# 3.0中仍然是符合語法規則的。編譯器會通過成員列表中的值的類型來推斷數組的類型。編譯并運行上面的例子,會得到如下的輸出:

  1. Type of array <ia>: System.Int32[]  
  2. Type of array <da>: System.Double[]  
  3. Type of array <sa>: System.String[] 

除了和具有隱式類型的局部變量具有相同的約束外,具有隱式類型的數組還有必須尊從這樣一個規則,即成員列表中的所有值必須是兼容的。也就是說,成員列表中必須存在這樣一個值,使得其他值可以隱式地轉換為該值的類型。因此,下面的聲明是不符合語法規則的:

  1. var aa = new [] { 1, "Hello", 2.0, "World" }; 

如果試圖編譯上面的代碼,會得到一個編譯錯誤:No array type can be inferred from the initializers。這是因為編譯器無法根據成員列表中的值來推斷數組的類型。

實際上,盡管C#具有隱式類型聲明使得傳統聲明的編寫方法更加便利,然而引入這種聲明方式的真正目的并不在于此,而是為了使局部變量和數組能夠訪問這樣一個新的語言構造:匿名類型。

【編輯推薦】

  1. C# System.Xml集合
  2. C#實現Strategy接口
  3. C#編寫操作TreeView組件剖析
  4. C#實現IDisposable接口淺析
  5. C#異常處理詳細剖析
責任編輯:佚名 來源: 百度空間
相關推薦

2009-08-26 15:39:08

C#隱式類型局部變量

2009-09-03 16:55:58

C#引用類型

2009-09-01 18:05:17

C#類型聲明

2009-09-04 10:49:19

C#隱式轉換

2023-08-14 08:35:36

2009-08-13 17:04:09

C#語言C#程序

2009-09-04 14:04:53

C#文檔

2009-08-20 09:30:03

C#開發WinForm

2009-08-03 16:45:02

C#異步Socket

2009-08-18 17:41:22

C# ListView

2009-08-03 18:08:39

C# ICloneab

2009-08-26 17:49:36

C# readonly

2009-08-31 13:18:09

C# IWebMess

2009-08-31 18:32:01

C# ListBoxE

2009-08-17 16:32:34

C# Anonymou

2009-08-19 10:09:21

C#和C++

2009-09-02 14:18:08

C#聲明COM接口

2009-08-14 14:38:08

C# DataGrid

2009-09-04 13:22:31

C#實現多個接口

2009-09-04 11:15:07

選擇C#構造函數
點贊
收藏

51CTO技術棧公眾號

秋霞影院一区| 亚洲承认视频| 国产精品视频在线播放| 日韩电影视频免费| 亚洲国产精品一区二区三区| 日韩精品中文字幕在线播放| 日韩高清有码在线| 欧美成人精精品一区二区频| 国产精品美女久久久久久2018 | 一区二区三区av| 97在线视频免费观看完整版| 久久久精品动漫| 日韩精品视频在线| 亚洲国产精品久久久久蝴蝶传媒| 免费观影入口看日本视频| 久久天天狠狠| xvideos成人免费中文版| 国产欧美婷婷中文| 青少年xxxxx性开放hg| 国产精品妹子av| 欧美a级理论片| 懂色av一区二区三区蜜臀| 国产精品久久免费看| 伊人夜夜躁av伊人久久| 欧美日韩国产中文精品字幕自在自线| 欧美日韩国产影片| jiyouzz国产精品久久| 99热在这里有精品免费| 一区二区三区成人在线视频| 日韩欧美一区二区不卡| 欧美成人免费全部| 91精品久久久久久久久不口人| 秋霞久久久久久一区二区| 熟女性饥渴一区二区三区| 国产精品日韩在线一区| 国产精品9999| 欧美成人免费va影院高清| 欧美成人69| 大色综合视频网站在线播放| 欧美国产小视频| 91成人观看| 视频免费一区| 日本韩国一区| 成人偷拍自拍| 丝袜国产日韩另类美女| 精品亚洲成a人| 久久久噜噜噜久久人人看| 99riav久久精品riav| 一区视频在线播放| 久久综合狠狠综合| 91蜜桃视频在线| 成人永久看片免费视频天堂| 91论坛在线播放| 午夜成人免费电影| 亚洲三级在线免费| 中文字幕亚洲区| 欧美日本在线播放| 国产成人h网站| 国产日韩欧美精品电影三级在线| 最新在线观看av网站| 日韩中文字幕亚洲精品欧美| 91九色在线观看| 日韩免费观看av| 久久精品精品电影网| 亚洲国产美女精品久久久久∴| 色88888久久久久久影院野外| 久久免费电影网| 久久久99久久精品女同性| 亚洲mv在线看| a视频在线免费看| 免费一区二区三区视频导航| 成人精品高清在线| 日韩丝袜美女视频| 97欧洲一区二区精品免费| 99国产精品免费网站| 永久在线免费观看| 啊啊啊啊啊啊啊视频在线播放| 亚洲精品在线看| 精品久久毛片| 超碰资源在线| 国产做受高潮69| 亚洲国产精品精华液2区45| 视频在线观看国产精品| 欧美精品18| 久久资源中文字幕| 在线日韩网站| 欧洲亚洲成人| 91精品短视频| 精品一区二区三区中文字幕在线| 欧美色网一区| 中文字幕在线中文字幕在线中三区| 午夜av在线免费观看| 在线免费看黄| 五月天婷婷在线视频| 福利成人在线观看| 黄色片在线免费观看| 中文视频在线| 领导边摸边吃奶边做爽在线观看| 国产三级免费观看| 在线播放国产区| 在线观看黄色| 美女毛片在线看| 北岛玲一区二区三区| 免费在线看v| 粉嫩av一区| 国产精品久久麻豆| 好看的中文字幕在线播放| 97久久人人超碰caoprom| 免费高潮视频95在线观看网站| 国产剧情av在线播放| 色戒汤唯在线观看| 国产精品迅雷| 国产精品黄色片| 亚洲天堂网站| 极品束缚调教一区二区网站| 亚洲人成网站77777在线观看| 国产成人调教视频在线观看| 91综合在线| 国产综合自拍| 亚洲女同同性videoxma| 免费看欧美女人艹b| 懂色av一区二区三区免费观看| 91亚洲永久精品| 国产精品区一区二区三区| 中文字幕欧美一区| 一区二区免费看| 91久久线看在观草草青青| 欧美久久一二区| 精品成人在线观看| 最近2019中文免费高清视频观看www99 | 欧美精品成人一区二区在线观看 | 日韩成人伦理电影在线观看| 国产亚洲人成a一在线v站| 国内精品卡一卡二卡三新区| 国产在线播精品第三| 国产aaa精品| 日本伦理一区二区| 久久麻豆精品| 欧美日韩在线播放一区| 天天干天天操天天干天天操| 国产精品专区免费| 久久免费精品国产久精品久久久久| 成人性生交大片免费看视频直播| 久久99精品久久久久久青青91| 精品国产美女| 国产超碰精品在线观看| 色哟哟在线观看| 三级网站视频在在线播放| 久久夜夜久久| 日韩国产综合| 热久久免费视频| 国产欧美日韩卡一| 日本韩国精品在线| 亚洲欧美激情诱惑| 国产精品成人一区二区三区吃奶| 亚州精品国产| 亚洲一区二区久久| 91在线视频| 色视频成人在线观看免| 女人黄色片免费| 1000部国产精品成人观看| gay视频丨vk| 国产精品九色蝌蚪自拍| 精品欧美黑人一区二区三区| 久久久亚洲精品无码| 日本成人a网站| 国产亚洲人成网站在线观看| 大片免费播放在线视频| 一本色道久久综合亚洲精品不| 亚洲国产日韩欧美在线| 成人激情电影一区二区| 久久国产日本精品| 久久国产精品久久精品国产| 99在线精品一区二区三区| 成人午夜影院| 亚洲成人资源网| 超碰国产在线| 在线成人午夜影院| 日韩另类在线| 久久国产加勒比精品无码| 亚洲无线看天堂av| 日韩一级精品视频在线观看| 波多野结衣在线网站| 欧美久久久久免费| 动漫h在线观看| 精品视频免费看| 日韩一级免费| 国产在线88av| 成人免费毛片在线观看| 色88888久久久久久影院野外| 成人精品视频在线观看| 欧日韩免费视频| 老司机精品久久| 91九色国产在线| 久久亚洲成人| 91手机在线播放| 日欧美一区二区| 北条麻妃69av| 红桃视频成人在线观看| 午夜两性免费视频|