Namespaces
Variants

std:: islessgreater

From cppreference.net
Common mathematical functions
Nearest integer floating point operations
(C++11)
(C++11)
(C++11) (C++11) (C++11)
Floating point manipulation functions
(C++11) (C++11)
(C++11)
(C++11)
Classification and comparison
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
islessgreater
(C++11)
Types
(C++11)
(C++11)
(C++11)
Macro constants
ヘッダーで定義 <cmath>
(1)
bool islessgreater ( float x, float y ) ;

bool islessgreater ( double x, double y ) ;

bool islessgreater ( long double x, long double y ) ;
(C++11以降)
(C++23まで)
constexpr bool islessgreater ( /* floating-point-type */ x,
/* floating-point-type */ y ) ;
(C++23以降)
ヘッダーで定義 <cmath>
template < class Arithmetic1, class Arithmetic2 >
bool islessgreater ( Arithmetic1 x, Arithmetic2 y ) ;
(A) (C++11以降)
(constexpr C++23以降)
1) 浮動小数点数 x が浮動小数点数 y より小さいか大きいかを判定し、浮動小数点例外を設定しない。 ライブラリは、パラメータ x および y の型として、すべてのcv修飾されていない浮動小数点型に対するオーバーロードを提供する。 (C++23以降)
A) その他の算術型のすべての組み合わせに対して、追加のオーバーロードが提供されています。

目次

パラメータ

x, y - 浮動小数点または整数値

戻り値

true if x < y || x > y false それ以外の場合。

注記

組み込みの operator < および operator > は、引数の一方または両方がNaNの場合、 FE_INVALID を発生させる可能性があります。この関数は式 x < y || x > y の「quiet」バージョンです。

追加のオーバーロードは (A) と完全に同一である必要はありません。それらは、第一引数 num1 と第二引数 num2 について以下を保証するのに十分であればよいのです:

  • num1 または num2 の型が long double の場合、 std :: islessgreater ( num1, num2 ) std :: islessgreater ( static_cast < long double > ( num1 ) ,
    static_cast < long double > ( num2 ) )
    と同じ効果を持つ。
  • それ以外の場合、 num1 および/または num2 の型が double または整数型の場合、 std :: islessgreater ( num1, num2 ) std :: islessgreater ( static_cast < double > ( num1 ) ,
    static_cast < double > ( num2 ) )
    と同じ効果を持つ。
  • それ以外の場合、 num1 または num2 の型が float の場合、 std :: islessgreater ( num1, num2 ) std :: islessgreater ( static_cast < float > ( num1 ) ,
    static_cast < float > ( num2 ) )
    と同じ効果を持つ。
(C++23まで)

num1 num2 が算術型を持つ場合、 std :: islessgreater ( num1, num2 ) std :: islessgreater ( static_cast < /*common-floating-point-type*/ > ( num1 ) ,
static_cast < /*common-floating-point-type*/ > ( num2 ) )
と同じ効果を持つ。ここで /*common-floating-point-type*/ num1 num2 の型の間で最大の 浮動小数点変換ランク と最大の 浮動小数点変換サブランク を持つ浮動小数点型であり、整数型の引数は double と同じ浮動小数点変換ランクを持つと見なされる。

そのような最大のランクとサブランクを持つ浮動小数点型が存在しない場合、 オーバーロード解決 は提供されたオーバーロードから使用可能な候補を結果として生成しない。

(C++23以降)

関連項目

(C++11)
第1浮動小数点引数が第2引数より小さいかどうかをチェックする
(関数)
(C++11)
第1浮動小数点引数が第2引数より大きいかどうかをチェックする
(関数)
Cドキュメント for islessgreater