C++ standard libraries extensions, version 3
From cppreference.net
<
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 。
スコープガード
|
ヘッダーで定義
<experimental/scope>
|
|
|
関数オブジェクトをラップし、スコープ終了時に呼び出す
(クラステンプレート) |
|
|
関数オブジェクトをラップし、例外によるスコープ終了時に呼び出す
(クラステンプレート) |
|
|
関数オブジェクトをラップし、正常なスコープ終了時に呼び出す
(クラステンプレート) |
|
|
ユニバーサルRAIIリソースハンドルラッパー
(クラステンプレート) |
|
機能テストマクロ
|
定義済みヘッダー
<experimental/memory_resource>
|
|
|
__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
の値はスコープガードがサポートされていることを示す
(マクロ定数) |
注記
__cpp_lib_experimental_memory_resources
の値はLFTS v3で増加されました。これは
resource_adaptor
の設計が
std::pmr::memory_resource
に基づいて再構築されたためです。