std::nothrow_t
From cppreference.com
Defined in header <new>
|
||
struct nothrow_t {}; |
(until C++11) | |
struct nothrow_t { explicit nothrow_t() = default; }; |
(since C++11) | |
std::nothrow_t
is an empty class type used to disambiguate the overloads of throwing and non-throwing allocation functions.
Defect reports
The following behavior-changing defect reports were applied retroactively to previously published C++ standards.
DR | Applied to | Behavior as published | Correct behavior |
---|---|---|---|
LWG 2510 | C++11 | the default constructor was non-explicit, which could lead to ambiguity | made explicit |
See also
an object of type nothrow_t used to select an non-throwing allocation function (constant) | |
allocation functions (function) |