名前空間
変種
操作

std::bit_not<void>

提供: cppreference.com
< cpp‎ | utility‎ | functional
 
 
 
関数オブジェクト
関数ラッパー
(C++11)
(C++11)
関数の部分適用
(C++20)
(C++11)
関数呼び出し
(C++17)
恒等関数オブジェクト
(C++20)
参照ラッパー
(C++11)(C++11)
演算子ラッパー
否定子
(C++17)
検索子
古いバインダとアダプタ
(C++17未満)
(C++17未満)
(C++17未満)
(C++17未満)
(C++17未満)(C++17未満)(C++17未満)(C++17未満)
(C++20未満)
(C++20未満)
(C++17未満)(C++17未満)
(C++17未満)(C++17未満)

(C++17未満)
(C++17未満)(C++17未満)(C++17未満)(C++17未満)
(C++20未満)
(C++20未満)
 
ヘッダ <functional> で定義
template<>
class bit_not<void>;
(C++14以上)

std::bit_not<> は引数と戻り値の型を推定する std::bit_not の特殊化です。

目次

[編集] メンバ型

メンバ型 定義
is_transparent /* unspecified */

[編集] メンバ関数

operator()
引数に operator~ を適用します
(パブリックメンバ関数)

std::bit_not<>::operator()

template< class T >

constexpr auto operator()( T&& arg ) const

  -> decltype(~std::forward<T>(lhs));

~arg の結果を返します。

引数

arg - ビット単位の論理否定を適用する値

戻り値

~arg の結果。

[編集] ノート

メンバ型 is_transparent はこの関数オブジェクトが透過的な関数オブジェクトである、つまり、任意の型の引数を受理し、不均一な分脈や右辺値引数で使用されたときに不要なコピーや変換を回避する完全転送を使用することを、呼び出し元に示します。 特に、 std::set::findstd::set::lower_bound のようなテンプレート関数は Compare 型についてこのメンバ型を使用します。

[編集]