C# 6和 VB 12的最新特性列表
英文原文:Updated Feature List for C# 6 and VB 12
隨著下個版本的 C# 發布日逐漸臨近,那些還沒有完成的特性必須被砍掉。最近從特性列表中被砍掉的特性包括主要構造函數(primary constructor)和聲明表達式(declaration expression)。Mads Torgersen 寫道:
正如我之前所說的一樣,語言特性在這次發布中只是第二等級的考慮。這次發布的主要目標是出色地完成 Roslyn 價值命題的首個發布,包括在 IDE 中對語言特性更深入的理解,以及讓所有人都可以通過一套健壯和完善的 API 進行訪問。為了更好地實現這次提交的內容,我們不得不對語言特性進行一些相應的縮減。
</blockquote>好在并不是只有壞消息,一個之前從未被微軟提到過的新特性即將隨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#中已具有該特性)
- 在自動屬性中指定字段(尚未確定)
- 你可以在語言特性狀態頁面中看到尚未被砍掉的全部特性列表。
</ul>注意:InfoQ 之前曾錯誤地報導了模式匹配會成會C# 6 與 VB 12 的一部分,特此澄清。
來自: InfoQ<span id="shareA4" class="fl"> </span>
本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!