Difference between revisions of "cpp/utility/functional/bit not"
From cppreference.com
< cpp | utility | functional
(a class since c++14 doesn't need a specialization with another 'since c++14') |
(→Member types: +) |
||
Line 20: | Line 20: | ||
− | + | {{cpp/utility/functional/member types|result=T|arg1=T}} | |
− | {{ | + | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
===Member functions=== | ===Member functions=== |
Revision as of 11:39, 9 June 2018
Defined in header <functional>
|
||
template< class T = void > struct bit_not; |
(since C++14) | |
Function object for performing bitwise NOT. Effectively calls operator~ on type T
.
Contents |
Specializations
The standard library provides a specialization of std::bit_not
when T
is not specified, which leaves the parameter types and return type to be deduced.
(C++14) |
function object implementing ~x deducing parameter and return types (class template specialization) |
Member types
Type | Definition |
result_type (deprecated in C++17)(removed in C++20)
|
T
|
argument_type (deprecated in C++17)(removed in C++20)
|
T
|
These member types are obtained via publicly inheriting std::unary_function<T, T>. |
(until C++11) |
Member functions
operator() |
returns the result of bitwise NOT of its argument (public member function) |
std::bit_not::operator()
constexpr T operator()( const T& arg ) const; |
||
Returns the result of bitwise NOT of arg
.
Parameters
arg | - | value to compute bitwise NOT of |
Return value
The result of ~arg.
Exceptions
(none)
Possible implementation
constexpr T operator()(const T& arg) const { return ~arg; } |