隨著 Visual Studio 2005 的發布,C# 語言已更新為 2.0 版,它支持下列新功能: 1 泛型 該語言中添加了一些泛型類型,使得程序員能夠實現程度很高的代碼重用,獲得更高的集合類性能。泛型類型只存在 arity 上的不同。也可以將參數強制為特定的類型。 2 迭代器 迭代器使得規定 foreach 循環將如何循環訪問集合的內容變得更加容易。 3 分部類 分部類型定義允許將單個類型(比如某個類)拆分為多個文件。Visual Studio 設計器使用此功能將它生成的代碼與用戶代碼分離。 4 可空類型 可空類型允許變量包含未定義的值。在使用數據庫和其他可能包含未含有具體值的元素的數據結構時,可以使用可空類型。 5 匿名方法 現在,可以將代碼塊作為參數來傳遞。在本應使用委托的任何地方,都可以使用代碼塊來取代:不需要定義新的方法。 6 命名空間別名限定符 命名空間別名限定符 (::) 對訪問命名空間成員提供了更多控制。global :: 別名允許訪問可能被代碼中的實體隱藏的根命名空間。 7 靜態類 若要聲明那些包含不能實例化的靜態方法的類,靜態類就是一種安全而便利的方式。C# 1.2 版要求將類構造函數定義為私有的,以防止類被實例化。 8 外部程序集別名 通過 extern 關鍵字的這種擴展用法引用包含在同一程序集中的同一組件的不同版本。 9 屬性訪問器可訪問性 現在可以為屬性的 get 和 set 訪問器定義不同級別的可訪問性。 10 委托中的協變和逆變 現在傳遞給委托的方法在返回類型和參數方面可以具有更大的靈活性。 11 如何:聲明、實例化和使用委托 方法組轉換為聲明委托提供了一種更簡單的語法。 12 固定大小的緩沖區 在不安全的代碼塊中,現在可以聲明包含嵌入數組的固定大小結構。 13 友元程序集 程序集可以提供對其他程序集的非公共類型的訪問。 14 內聯警告控制 #pragma 警告指令可用于禁用和啟用某些編譯器警告。 15 volatile 現在可以將 volatile 關鍵字應用于 IntPtr 和 UIntPtr。
|