std::default_initializable
|
在标头
<concepts> 定义 |
||
|
template < class T >
concept default_initializable = std::constructible_from<T> && requires { T{}; } && |
(C++20 起) | |
default_initializable 概念检查 T 类型变量能否
如同在与 T 无关的语境中进行访问检查。仅考虑变量初始化的立即语境的合法性。
可能的实现
template<class T> concept default_initializable = std::constructible_from<T> && requires { T{}; } && requires { ::new (static_cast<void*>(nullptr)) T; }; |
参阅
|
(C++20)
|
指定该类型的变量能从一组实参类型进行构造,或绑定到一组实参类型 (概念) |
| 检查类型是否有默认构造函数 (类模板) |