你需要了解的 C 17 Top 19 新特性

2021-09-23 15:04:47 字數 958 閱讀 6832

什麼是 c++17?

c++17(或 c++1z)是繼 c++14 之後 c++ 程式語言 iso/iec 標準的下一次修訂的非正式名稱。c++17 現在功能已齊全,正在成為國際標準的路上。它的規範已於 2017 年 3 月達到國際標準草案的階段。

c++17 的 19 個新特性

使 static_assert 的文字資訊可選

刪除 trigraphs

在模板引數中允許使用 typename(作為替代類)

來自 braced-init-list 的新規則用於自動推導

巢狀命名空間的定義,例如:使用 namespace x::y 代替 namespace x }

允許命名空間和列舉器的屬性

新的標準屬性:[[fallthrough]], [[maybe_unused]] 和 [[nodiscard]]

utf-8 字元文字

對所有非型別模板引數進行常量評估

fold 表示式,用於可變的模板

a compile-time static if with the form if constexpr(expression)

結構化的繫結宣告,現在允許 auto [a, b] = gettworeturnvalues();

if 和 switch 語句中的初始化器

在某些情況下,確保通過編譯器進行 copy elision(guaranteed copy elision by compilers in some cases)

一些用於對齊記憶體分配的擴充套件

建構函式的模板推導,允許使用 std::pair(5.0, false) 代替 std::pair(5.0, false)

內聯變數,允許在標頭檔案中定義變數

__has_include,允許由預處理程式指令檢查標頭檔案的可用性

__cplusplus 的值更改為 201703l

Fiddler 你需要了解的

官網 平台 支援所有作業系統和瀏覽器,對window支援比較好 主要功能 工作原理 系統 不過如果fiddler非正常退出,這時候因為fiddler沒有自動登出,會造成網 頁無法訪問。解決的辦法是重新啟動下fiddler.同類的其它工具有 httpwatch,firebug,wireshark 啟動...

關於「寫作」你需要了解的

寫作技能 writing skill 是言語技能的一種形式。指控制和調節寫作活動進行的心智活動方式。在寫作過程中形成。包括構思技能 表達技能和修改技能。與寫作知識密切相關,但又有區別。寫作知識是一種有關寫作程式的操作性知識,對寫作活動只起定向作用。言語技能的一種形式。控制和調節寫作活動進行的心智活動...

你需要了解的load和initialize

nsobject類有兩種初始化方式load和initialize void load 複製 對於加入執行期系統的類及分類,必定會呼叫此方法,且僅呼叫一次。ios會在應用程式啟動的時候呼叫load方法,在main函式之前呼叫 執行子類的load方法前,會先執行所有超類的load方法,順序為父類 子類 ...