名前空間
変種
操作

名前付き要件: DefaultConstructible

提供: cppreference.com
< cpp‎ | named req
 
 
名前付き要件
 

その型のインスタンスがデフォルト構築可能であることを指定します。

[編集] 要件

以下の内容を満たす場合、型 TDefaultConstructible を満たします。

  • 任意の識別子 u

が与えられたとき、以下の式が有効でなければならず、指定された効果を持たなければなりません。

事後条件
T u オブジェクト uデフォルト初期化される。
T u{} オブジェクト u値初期化または集成体初期化される。
T()

T{}

T 型の一時オブジェクトが値初期化または集成体初期化される。

[編集] ノート

非集成体クラス型のオブジェクトの場合は、 DefaultConstructible を満たすためにはパブリックなデフォルトコンストラクタが (ユーザによりまたは暗黙に) 定義されなければなりません。

非クラスオブジェクト型の非 const オブジェクトは必ず DefaultConstructible です。

const な非クラス型は DefaultConstructible ではありません。

const な集成体型は、そのメンバのいずれかが非クラス型のオブジェクトの場合、 DefaultConstructible ではありません。

非オブジェクト型 (関数型、参照型、 void 型および cv 修飾付きの void 型) および const な非オブジェクト型は DefaultConstructible となることはありません。

[編集] 関連項目

型がデフォルトコンストラクタを持っているかどうか調べます
(クラステンプレート) [edit]