Visual Studio 2015 中的 C++11 特性


C++11 是標準 C++ 語言的一個版本。它於 2011 年 8 月 12 日由國際標準化組織 (ISO) 批准,之後是 C++14 和 C++17。C++11 對核心語言進行了一些補充。Visual C++ 實現了 C++11 中的大多數特性。

Visual Studio 2015 中的一些 C++11 特性如下:

  • nullptr − 在之前的版本中,零用於表示空指標,它有一個缺點,即可以隱式轉換為整數值。空指標字面量由 std::nullptr_t 表示。在 nullptr 中,不存在隱式轉換。

  • Lambda 表示式 − Lambda 表示式允許在本地定義函式。匿名函式稱為 Lambda。我們可以在任何期望函式物件 std::function 的地方使用 Lambda 表示式。

  • auto − 在以前的版本中,我們必須指定物件的型別,但在 C++11 中,無需指定型別,這意味著您可以直接宣告變數而無需指定其型別。

  • Override 和 Final − C++11 版本引入了兩個新的特殊識別符號,即 override 和 final。Override 指示該方法應該覆蓋基類中的虛方法。另一方面,final 指示派生類不應覆蓋虛方法。

  • 刪除和預設函式 − 刪除的函式用於防止物件複製。要停用複製,使用“ =delete; ”。預設函式指示編譯器生成函式的預設實現,而“ =default; ”用於預設函式。

  • 強型別列舉 − 在傳統的列舉中,它們用於在周圍作用域中匯出其列舉器。它們被指定為“enum class”關鍵字。它們不會在其周圍作用域中匯出其列舉器。

  • Static_assert 和型別特徵 − 它在編譯時執行斷言檢查。如果斷言為真,則不顯示任何內容,否則,它將顯示錯誤訊息。

  • 基於範圍的 for 迴圈 − C++11 引入了基於範圍的 for 迴圈來迭代集合。現在,可以像迭代 C 陣列一樣進行迭代。它支援迭代的“foreach”正規化。

更新於: 2019-07-30

281 次瀏覽

啟動你的 職業生涯

透過完成課程獲得認證

開始學習
廣告

© . All rights reserved.