std::nothrow_t

来自cppreference.com
< cpp‎ | memory‎ | new
 
 
工具库
通用工具
日期和时间
函数对象
格式化库 (C++20)
(C++11)
关系运算符 (C++20 中弃用)
整数比较函数
(C++20)(C++20)(C++20)
(C++20)
swap 与类型运算
(C++14)
(C++11)
(C++11)
(C++11)
(C++17)
常用词汇类型
(C++11)
(C++17)
(C++17)
(C++17)
(C++11)
(C++17)
(C++23)
初等字符串转换
(C++17)
(C++17)
 
动态内存管理
未初始化内存算法
受约束的未初始化内存算法
分配器
垃圾收集支持
(C++11)(C++23 前)
(C++11)(C++23 前)
(C++11)(C++23 前)
(C++11)(C++23 前)
(C++11)(C++23 前)
(C++11)(C++23 前)



 
 
在标头 <new> 定义
struct nothrow_t {};
(C++11 前)
struct nothrow_t { explicit nothrow_t() = default; };
(C++11 起)

std::nothrow_t 是用于区分抛出与不抛出分配函数重载的空类类型。

缺陷报告

下列更改行为的缺陷报告追溯地应用于以前出版的 C++ 标准。

缺陷报告 应用于 出版时的行为 正确行为
LWG 2510 C++11 默认构造函数为非 explicit ,能导致歧义 使之为 explicit

参阅

用于选择不抛出分配函数 的 nothrow_t 类型对象
(常量)
分配函数
(函数)