国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

C#關鍵字var是什么,在何種情況下使用

2019-11-17 02:54:48
字體:
來源:轉載
供稿:網友

C#關鍵字var是什么,在何種情況下使用

從.NET 3.0開始,在方法內部可以使用var關鍵字聲明局部變量。var關鍵字到底是什么?在何種情況下使用呢?

□ var關鍵字用來隱式地聲明一個數據類型,變量類型是在編譯期確定的,而不是在運行時確定的

聲明一個var變量a,把整型數10賦值給a,接著把一個字符串賦值給變量a。運行發現報錯:無法將類型string隱式轉換為int。1 這說明:用var聲明一個變量時,雖然不是顯式聲明,但在編譯期,已經確定了變量的類型。

通過反編譯同樣可以證明以上推斷。

→把a = "abc";這行代碼去掉,并生按F6生成解決方案。 →打開"VS2012開發人員命令提示",輸入如下命令2 →在"解決方案資源管理器"中右鍵項目的名稱,選擇"在文件資源管理器中打開文件夾",再點擊bin,Debug文件夾,在地址欄中賦值Debug文件夾的路徑 →點擊"IL DASM"的文件--打開,輸入剛才拷貝的Debug文件夾路徑,再選擇.exe后綴的可執行文件,雙擊"Main:void(string[])"。在IL代碼中:3 可以看出:變量a已經是Int類型,并且是一個局部變量。

□ var關鍵字讓編碼更簡短

對于一些名稱比較長的類,當創建類實例的時候,用var關鍵字看上去更簡短。當然這個理由是比較牽強的~~

     class PRogram
    {
        static void Main(string[] args)
        {
            HelloIHaveALongLongName<string, string> obj = new HelloIHaveALongLongName<string, string>();
        }
    }
    public class HelloIHaveALongLongName<T, T>
    {
        public string Name;
    }

如果使用var關鍵字,就變成:

var obj = new HelloIHaveALongLongName<string, string>();
obj.Name = "hello";

可見,用var關鍵字,讓寫法更簡短,并且var變量是一個強類型。

□ var關鍵字與匿名類型

通過LINQ表達式返回一個匿名類型。

        static void Main(string[] args)
        {
            string[] strs = {"hello", "world", "nice", "to", "meet", "you"};
            object o = from s in strs
                where s.Length > 3
                select new {s.Length, s};
        }
以上,object類型變量o并不是一個強類型變量。4

如果我們用強類型的類來接收LINQ返回的集合。

    class Program
    {
        static void Main(string[] args)
        {
            string[] strs = {"hello",
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 威宁| 江油市| 远安县| 汕头市| 淳化县| 定南县| 湘乡市| 黄冈市| 桂阳县| 林口县| 大渡口区| 临邑县| 丰都县| 英德市| 汶上县| 民乐县| 翁源县| 太保市| 德保县| 蒙阴县| 科技| 马边| 扎囊县| 德州市| 涪陵区| 巴中市| 育儿| 宣武区| 东港市| 泰安市| 尤溪县| 开化县| 苏尼特左旗| 关岭| 汶上县| 葵青区| 永城市| 怀集县| 两当县| 平利县| 栾城县|