首頁 >後端開發 >C++ >C 1z 編譯器中實作了哪些 C 17 功能?

C 1z 編譯器中實作了哪些 C 17 功能?

Susan Sarandon
Susan Sarandon原創
2024-12-26 19:10:12664瀏覽

What C  17 Features are Implemented in C  1z Compilers?

C 1z 編譯器中的C 17 功能

C 17 現已功能完整,支援「C 1z」的編譯器將實現大部分功能C 17 中新增的功能。 C 1z 編譯器中將提供的一些關鍵功能包括:

語言特性:

  • 類別模板的模板參數推導
  • templatelate
  • Non -類型模板參數修復
  • template
  • ( 折疊... 表達式) 並進行修訂
  • auto x{8};是一個 int
  • 現代化使用...和列表

Lambda:

  • Constexpr lambdas
  • 捕獲*這個lambda

屬性:

  • [[fallthrough]]、[[nodiscard]]、[[maybe_unused]] 屬性
  • [[屬性]]命名空間和枚舉器

語法清理:

    內聯變數
  • 使用結構化綁定和if (>內聯變數
  • 使用結構化綁定和if ( init ;健康)狀況)語法

資料類型:

  • std::variant
  • std: :opti onal
  • std::any
  • std::string_view

呼叫東西:

  • 呼叫東西:
  • d: :inv oke
  • std::apply

std::make_from_tupleis_invocable、is_invocable_r和invoke_result

  • 檔案系統 TS v1:

檔案 I/O相關類別與函數

  • 演算法:

新演算法,例如 for_each_n、reduce和Transform_reduce

  • 線程:

std::shared_mutex

  • std::shared_mutex
  • std::shared_mutex

庫基礎知識v1:

  • 搜尋演算法和技術
多態分配器(std::pmr)

容器改進,包括拼接和非成員std: :size

  • 智慧型指標:
  • unique_ptr修正

其他變更:

C 17庫基於C11 而不是C99特殊數學函數std::clampstd::void_t注意:請查閱編譯器文件以取得確切的清單您的特定編譯器支援的 C 17 功能。

以上是C 1z 編譯器中實作了哪些 C 17 功能?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn