C++ 概念: DefaultConstructible

来自cppreference.com
< cpp‎ | concept
 
 
 

指定类的实例能默认构造。

[编辑] 要求

类型 T 满足可默认构造 (DefaultConstructible) ,若

给定

  • u ,任意标识符

下列表达式必须合法且拥有其指定的效应

表达式 后置条件
T u 对象 u默认初始化
T u{} 对象 u值初始化聚合初始化
T()

T{}

T 类型临时对象被值初始化聚合初始化

[编辑] 注意

对于非聚合类类型,必须定义公开的默认构造函数(用户定义或隐式定义)以满足可默认构造 (DefaultConstructible) 。

非类对象类型的非 const 对象始终可默认构造 (DefaultConstructible) 。

const 非类类型非可默认构造 (DefaultConstructible) 。

const 聚合类型非可默认构造 (DefaultConstructible) ,若其任何成员是非类类型对象。

非对象类型(函数类型、引用类型,及(可能 cv 限定的)类型 void )还有 const 非对象类型决非可默认构造 (DefaultConstructible) 。

[编辑] 参阅

检查类型是否有默认构造函数
(类模板) [编辑]