名前空間
変種
操作

コンセプトライブラリ (C++20)

提供: cppreference.com
< cpp

コンセプトライブラリはテンプレート引数のコンパイル時検証および型の特性に基づく関数ディスパッチを行うために使用される基礎的なライブラリコンセプトの定義を提供します。 これらのコンセプトはプログラムの等式推論の基礎を提供します。

標準ライブラリのほとんどのコンセプトは構文と意味論の両方の要件を課します。 一般的にコンパイラによってチェック可能なのは構文の要件だけです。 使用の時点で意味論の要件が満たされない場合、プログラムは ill-formed であり、診断は要求されません。

ヘッダ <concepts> で定義
名前空間 std で定義

目次

コア言語のコンセプト
(C++20)
型が別の型と同じであることを指定します
(コンセプト) [edit]
型が別の型から派生していることを指定します
(コンセプト) [edit]
型が別の型に暗黙に変換可能であることを指定します
(コンセプト) [edit]
2つの型が共通の参照型を共有することを指定します
(コンセプト) [edit]
(C++20)
2つの型が共通の型を共有することを指定します
(コンセプト) [edit]
(C++20)
型が整数型であることを指定します
(コンセプト) [edit]
型が符号付きの整数型であることを指定します
(コンセプト) [edit]
型が符号なしの整数型であることを指定します
(コンセプト) [edit]
型が別の型から代入可能であることを指定します
(コンセプト) [edit]
型がスワップ可能であること、または2つの型がお互いにスワップ可能であることを指定します
(コンセプト) [edit]
その型のオブジェクトが破棄可能であることを指定します
(コンセプト) [edit]
その型の変数が与えられた引数のセットから構築可能または束縛可能であることを指定します
(コンセプト) [edit]
その型のオブジェクトがデフォルト構築可能であることを指定します
(コンセプト) [edit]
その型のオブジェクトがムーブ構築可能であることを指定します
(コンセプト) [edit]
その型のオブジェクトがコピー構築およびムーブ構築可能であることを指定します
(コンセプト) [edit]
比較のコンセプト
(C++20)
型がブーリアンの文脈で使用可能であることを指定します
(コンセプト) [edit]
演算子 == が同等関係であることを指定します
(コンセプト) [edit]
型の比較演算子が全順序を与えることを指定します
(コンセプト) [edit]
オブジェクトのコンセプト
(C++20)
その型のオブジェクトがムーブおよびスワップ可能であることを指定します
(コンセプト) [edit]
(C++20)
その型のオブジェクトがコピー、ムーブ、およびスワップ可能であることを指定します
(コンセプト) [edit]
その型のオブジェクトがコピー、ムーブ、スワップ、およびデフォルト構築可能であることを指定します
(コンセプト) [edit]
(C++20)
型が普通である、つまり Semiregular かつ EqualityComparable であることを指定します
(コンセプト) [edit]
呼び出し可能なコンセプト
呼び出し可能な型が与えられた引数型のセットで呼び出せることを指定します
(コンセプト) [edit]
(C++20)
呼び出し可能な型がブーリアンの述語であることを指定します
(コンセプト) [edit]
(C++20)
呼び出し可能な型が二項関係であることを指定します
(コンセプト) [edit]
Relation が厳密な弱い順序を課すことを指定します
(コンセプト) [edit]