一 初學C 3 0之隱含型別區域性變數

2021-04-15 01:43:49 字數 759 閱讀 6668

(一)初學c# 3.0之隱含型別區域性變數

隱含型別區域性變數(implicitly typed local variable)利用var關鍵字宣告區域性變數,變數宣告時必須初始化,變數的型別從初始化的值推斷出來。

using system;

namespace teson

;//相當於int d=new int;

var e=b+c;

console.writeline(a);

console.writeline(b);

console.writeline(c);

console.writeline(e);

foreach(var i in d)

console.writeline(i);

console.readline();}}

}使用隱含型別區域性變數有一些限制:

1.宣告變數時必有同時初始化變數。

var error1;  //錯誤,沒有初始化變數

2.初始化器必須是表示式,不可以是物件或集合初始化器。

var error2=  //錯誤,不允許集合初始化器

3.編譯時型別的初始化器表示式不可以是null型別。

var error3=null;

4.同時宣告多個變數時,其初始化器必有擁有相同的編譯時型別。

var a="hello",b=10;  //錯誤,a,b必有是相同型別

C 3 0新特性系列(1) 隱含型別區域性變數

一 隱含型別區域性變數簡介 在c 3.0中增加了很多新的語言特性,如果有乙個區域性變數被宣告為var,這個宣告被視為隱含型別區域性變數宣告,然後由編譯器根據區域性變數初始化表示式來推斷變數的型別。如下面的宣告 varinteger 10 varname terry lee varnumbers ne...

C 3 0新特性之隱式型別區域性變數的使用

首先說明一下,此新特性的專題基於ms五月份分布的c 3.0規範,但是官方中文版還沒有出來,結合自己的實踐和理解,希望能和大家一起分享某些前沿的東東,很有可能一些地方會出錯,望拋磚。在c 3.0裡面,可以對區域性變數進行隱式型別宣告,就是在宣告時可以不指定該變數的型別,變數在初始化的時候會由編譯器從表...

C 3 0特性之 匿名型別

匿名型別提供了一種方便的方法,可用來將一組唯讀屬性封裝到單個物件中,而無需首先顯式定義乙個型別。型別名由編譯器生成,並且不能在源 級使用。每個屬性的型別由編譯器推斷。可通過使用 new 運算子和物件初始值建立匿名型別。var person new console.writeline date.use...