22
Diagnostics library
[diagnostics]
22.3
Assertions
[assertions]
1
#
The header
<cassert>
provides a macro for documenting C++ program assertions and a mechanism for disabling the assertion checks
.
22.3.1
Header
<cassert>
synopsis
[cassert.syn]
#define assert(E)
see below
1
#
The contents are the same as the C standard library header
<assert.h>
, except that a macro named
static_assert
is not defined
.
See also:
ISO C 7
.
2
.
22.3.2
The
assert
macro
[assertions.assert]
1
#
An expression
assert(E)
is a constant subexpression (
[defns.const.subexpr]
), if
(1.1)
NDEBUG
is defined at the point where
assert
is last defined or redefined, or
(1.2)
E
contextually converted to
bool
(Clause
[conv]
) is a constant subexpression that evaluates to the value
true
.