偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

簡單介紹VB.NET和C#

開發(fā) 后端
這里介紹在VB.NET和C#第一次被發(fā)布時,很多人認為它們只是在語法和一些小的方面不一樣的相同語言而已,隨著時間的推移,VB.NET和C#之間的不同越來越明顯,比如對匿名類型(Anonymous Type)的處理就有著天壤之別。

在VB.NET和C#***次被發(fā)布時,很多人認為它們只是在語法和一些小的方面不一樣的相同語言而已。但隨著時間的推移,VB.NET和C#之間的不同越來越明顯,比如對匿名類型(Anonymous Type)的處理就有著天壤之別。

為了支持類似哈希表的數(shù)據(jù)結(jié)構(gòu)和像分組這樣的查詢操作,由LINQ創(chuàng)建的匿名類型必須提供穩(wěn)定的哈希碼。而哈希碼通常是由對象里的字段(Field)來創(chuàng)建的。

早期的匿名類型版本是不穩(wěn)定的。換句話說,對象所包含的值可能會改變。而改變那些值的同時也改變了哈希碼,然后會破壞一些哈希表或者恰好儲存了對象的字典。

C#團隊使得匿名類型穩(wěn)定下來。如果對象不能被改變,那么哈希碼也永遠不變。通常這些穩(wěn)定的類型規(guī)則被放在非默認的構(gòu)造器(Constructor)和只有Getter的屬性(Property)里。

而VB團隊卻不想放棄修改匿名類的功能。Paul Vick這樣寫到:

盡管是有這樣的問題存在,我們不想在潑水的時候把孩子也扔掉?,F(xiàn)在匿名類型某種程度上是受限的,因為它們不能被命名,但是將來你可以用綁定來應(yīng)用它們,甚至在它們被聲明的上下文(Context)外面?,F(xiàn)在我們在努力的一些新特性,比如有名字的匿名類型(Nominal Anonymous Type)和動態(tài)接口,將來會使匿名類型更加有用。本身而言,要使匿名類型穩(wěn)定下來是不可想象的,特別是因為這會導(dǎo)致只有一條險徑可走——也就是一旦它們穩(wěn)定了,在未來的某個時候,兼容性會使它想要再不穩(wěn)定變得異常困難,如果它們想要這么做的話。

VB團隊選擇了一個相對復(fù)雜的方案,但這會給開發(fā)者更多的靈活性。當(dāng)創(chuàng)建匿名類型時,程序員可以用關(guān)鍵詞“Key”表示那些字段是穩(wěn)定的。另外要使屬性只讀的話,哈希碼函數(shù)會只用那些Key字段產(chǎn)生哈希碼。結(jié)果就是哈希碼保證是穩(wěn)定的。而且在被條件子句(Clause)用在聯(lián)合(Join)和分組(Group)里時,字段可以被編譯器自動地標(biāo)識成Key。

VB.NET和C#之所以能不同的實現(xiàn)方式是因為匿名類型是一個編譯器特性。CLR自己對匿名類型沒有什么概念,只是把它們看作有著自動產(chǎn)生名字的普通類。

和VB其他的語法一樣,這個功能在Orcas Beta 2版本中才會提供。

【編輯推薦】

  1. C#特有線程功能
  2. 淺談C#對象和集合
  3. 淺析C# FTP WebRequest對象
  4. C#分部方法的應(yīng)用場景
  5. 概述C#線程功能
責(zé)任編輯:佚名 來源: 博客園
相關(guān)推薦

2009-11-03 14:13:23

VB.NET C#

2009-11-10 10:28:20

VB.NET誕生

2009-09-07 15:04:07

2009-10-12 13:19:14

VB.NET線程同步

2009-11-02 10:36:16

VB.NET Sub

2010-01-07 16:40:13

VB.NET一維數(shù)組

2009-10-30 14:21:00

VB.NET開發(fā)語言

2009-06-12 09:22:44

VB.NET類型C#

2009-04-28 10:23:58

VB.NETC#對比

2009-11-02 16:47:18

VB.NET C#

2009-10-28 09:55:29

VB.NET MyCl

2009-10-16 13:26:53

VB.NET Exce

2010-01-11 18:32:42

VB.NET序列化

2009-10-23 17:22:48

VB.NET編程

2009-07-28 17:03:55

ASP.NET VB.

2009-08-20 18:44:54

C#和ADO.NET

2010-01-07 15:25:11

VB.NET數(shù)組

2009-10-12 15:02:51

VB.NET動態(tài)控件

2010-01-21 16:45:00

VB.NET繼承規(guī)則

2009-10-15 09:02:19

VB.NET申明數(shù)組
點贊
收藏

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