C++ 標準程式庫擴充,第 3 版
出自 cppreference.com
< cpp | experimental
C++ 函式庫基礎擴充第 3 版,ISO/IEC TS 19568:2024,在第 1 版與第 2 版所定義的基礎上,為 C++ 標準程式庫定義了下列新組件。
已合併至 C++17/20 的組件,以及下列在 LFTS v3 中被移除的組件:
- std::experimental::make_array,
- std::experimental::erased_type,
- std::experimental::packaged_task,以及
- std::experimental::promise.
[編輯] 作用域防護 (Scope guard)
| 定義於標頭檔
<experimental/scope> | |
| 封裝一個函式物件,並在退出作用域時呼叫它 (類別模板) | |
| 封裝一個函式物件,並在因異常退出作用域時呼叫它 (類別模板) | |
| 封裝一個函數物件,並在正常離開作用域時呼叫它 (類別模板) | |
| 通用的 RAII 資源控點封裝器 (類別模板) | |
[編輯] 功能測試巨集
| __cpp_lib_experimental_memory_resources |
值至少為 201803 表示支援 resource_adaptor (巨集常數) |
| 定義於標頭檔
<experimental/functional> | |
| __cpp_lib_experimental_function_polymorphic_allocator |
值至少為 202211 表示 std::pmr::polymorphic_allocator<> 被用於 std::experimental::function (巨集常數) |
| 定義於標頭檔
<experimental/scope> | |
| __cpp_lib_experimental_scope |
值至少為 201902 表示支援作用域防護 (scope guards) (巨集常數) |
[編輯] 備註
__cpp_lib_experimental_memory_resources 的值在 LFTS v3 中有所提升,因為 resource_adaptor 的設計已改為基於 std::pmr::memory_resource。