C 3 0新特性小結 2

2021-09-05 20:37:26 字數 1296 閱讀 2996

c#3.0中除了自動屬性外,還新增:

隱含型別區域性變數(local variable type inference) 匿名型別(anonymous types) 物件與集合初始化器(object and collection initializers)

**演示例項:

//測試陣列

public

static

void

testarray()

;var strarray 

=new

;var objarray 

=new

,new

};//

對單個變數賦值

var seta 

=intarray[0];

var setb 

=strarray[1];

var setc 

=objarray[

1].userpass;

//可以副單個屬性 也可副單個物件objarray[0]

//列印當前資料

console.writeline(

"seta:"+

seta +"

\nsetb:"+

setb+"

\nsetc:"+

setc);

}///

///綜合測試匿名型別

///

public

class

totaltestannoy

public

string

userpass 

public

intage 

//定義測試方法

public

static

void

testmethods()

集合器中只能裝totaltestannoy物件,不能var型別

newtotaltestannoy,

newtotaltestannoy,

newtotaltestannoy

};//

定義匿名型別

var gettotallist 

=from newtotallist 

intotallist

where

newtotallist.age 

==21

//吧結果定義成乙個新物件 只包含兩個屬性newname 和newpass

select 

new;

//迴圈列印新物件

foreach

(var getfirst 

ingettotallist)}}

回顧C 3 0新特性 2

三 擴充套件方法 讓我想起了設計模式中的裝飾器 decorator 我將在 c 3.0設計模式 的閱讀筆記中描述 其實.net內部很多方法已經是擴充套件方法了。看圖示,普通的方法圖示下帶乙個箭號的。上圖就是linq的截圖。擴充套件方法使您能夠向現有型別 新增 方法,而無需建立新的派生型別 重新編譯或...

C 3 0 新特性概覽

自從看了scottgu的幾篇文章後就有想讓c 3.0的一些新特性在我的部落格上也留下歷史地一頁。但是由於環境不允許好久都沒有用上.net 3.0,今天終於忍不住地要動一動鍵盤滿足一下自己的慾望,因為我自己的電腦上安裝了.net 3.0 framework sdk。在這裡我總結一下前輩們的研究成果,也...

C 3 0 新特性概覽

1.visual c 3.0 新特性概覽 在發布visual studio 2005和c 2.0之後,微軟公司又馬不停蹄的展示了人們所期望的c 的下一代版本 c 3.0。儘管c 3.0並沒有標準化,微軟還是在pdc 專業程式設計師會議 發布了乙個預覽版本,因此心急的程式設計師可以看到一些所期望的特性...