名前空間
変種
操作

std::islessequal

From cppreference.com
< cpp‎ | numeric‎ | math
 
 
 
共通の数学関数
関数
基本的な数学関数
(C++11)  
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)(C++11)(C++11)
指数関数
(C++11)
(C++11)

(C++11)
(C++11)
べき乗関数
(C++11)
(C++11)
三角関数と
双曲線関数
(C++11)
(C++11)
(C++11)

誤差関数とガンマ関数
(C++11)
(C++11)
(C++11)
(C++11)
最近接整数への浮動小数点数操作
(C++11)(C++11)(C++11)
(C++11)
(C++11)
(C++11)(C++11)(C++11)
浮動小数点数の操作関数
(C++11)(C++11)
(C++11)
(C++11)
(C++11)(C++11)
(C++11)
分類と比較
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
islessequal
(C++11)
(C++11)
(C++11)
(C++11)
マクロ定数
分類
(C++11)(C++11)(C++11)(C++11)(C++11)


 
ヘッダー <cmath> で定義
(1)
bool islessequal( float x, float y );

bool islessequal( double x, double y );

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

目次

[編集] パラメータ

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

[編集] 戻り値

`x <= y` の場合は true、それ以外の場合は false

[編集] 注釈

浮動小数点数に対する組み込みの `operator<=` は、引数のどちらか一方または両方が NaN である場合に `FE_INVALID` を発生させる可能性があります。この関数は `operator<=` の「静かな」バージョンです。

追加のオーバーロードは (A) とまったく同じように提供される必要はない。それらは、最初の引数 num1 と2番目の引数 num2 に対して以下を保証するのに十分である必要がある。

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

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

そのような最高のランクとサブランクセを持つ浮動小数点型が存在しない場合、オーバーロード解決は提供されたオーバーロードから使用可能な候補を導出しません。

(C++23から)

[編集] 関連項目

x <= y を実装する関数オブジェクト
(クラステンプレート) [編集]
最初の浮動小数点数引数が2番目以上かチェックする
(関数) [編集]
English 日本語 中文(简体) 中文(繁體)