編程學習網 > 編程語言 > C/C++開發 > C# 6和 VB 12的最新特性列表
2014
12-02

C# 6和 VB 12的最新特性列表

  隨著下個版本的C#發布日逐漸臨近,那些還沒有完成的特性必須被砍掉。最近從特性列表中被砍掉的特性包括主要構造函數(primary constructor)和聲明表達式(declaration expression)。Mads Torgersen寫道

正如我之前所說的一樣,語言特性在這次發布中只是第二等級的考慮。這次發布的主要目標是出色地完成Roslyn價值命題的首個發布,包括在IDE中對語言特性更深入的理解,以及讓所有人都可以通過一套健壯和完善的API進行訪問。為了更好地實現這次提交的內容,我們不得不對語言特性進行一些相應的縮減。

  好在并不是只有壞消息,一個之前從未被微軟提到過的新特性即將隨C# 6發布,這就是字符串值插入(string interpolation),該特性允許開發者對字符串直接進行內聯,而無需顯式地調用String.Format方法。字符串值插入在2009年時曾作為一個實驗性特性加入到Mono編譯器中。

  下個版本中將包含的特性包括以下內容:

  • 自動屬性的初始化器(VB中已具有該特性)
  • 只包括Get方法的自動屬性
  • 在構造函數中為只包括Get方法的自動屬性傳值
  • 無參數的結構體(struct)構造函數
  • 直接訪問靜態成員(VB中已具有該特性)
  • Dictionary的初始化器(僅限于C#)
  • 在catch與finally中調用await(C#中已完成,VB尚未確定)
  • 異常過濾器(VB中已具有該特性)
  • Typecase(VB尚未確定)
  • 部分(Partial)模塊(僅限于VB中,不適用于C#)
  • 部分(Partial)接口(C#中已具有該特性)
  • 多行字符串(C#中已具有該特性)
  • 獲取某一年第一天日期的日期表達式(僅限于VB)
  • 某行代碼延續的注釋(僅限于VB,不適用于C#)
  • TypeOf和IsNot(僅限于VB,不適用于C#)
  • 在成員定義中使用表達式(僅限于C#)
  • Null值傳遞(C#中已完成,VB尚未確定)
  • Params參數接受IEnumerable類型(尚未確定)
  • 字符串值插入(已在計劃中)
  • nameof操作符(C#中已完成,VB已在計劃中)
  • #pragma指令(C#中已具有該特性)
  • 在自動屬性中指定字段(尚未確定)
  • 你可以在語言特性狀態頁面中看到尚未被砍掉的全部特性列表。

  注意:InfoQ之前曾錯誤地報導了模式匹配會成會C# 6與VB 12的一部分,特此澄清。

  英文原文:Updated Feature List for C# 6 and VB 12

掃碼二維碼 獲取免費視頻學習資料

Python編程學習

查 看2022高級編程視頻教程免費獲取