最終更新日時: 2025年07月12日 02時16分44秒 (JST)
Koichi Murase が更新

履歴 編集

function
<limits>

# std::numeric_limits::infinity

    // C++03
    static T infinity() throw();

    // C++11
    static constexpr T infinity() noexcept;

## 概要

浮動小数点数型における、正の無限表現を取得する。

`numeric_limits<float>::has_infinity()`が`true`のとき、`numeric_limits<float>::infinity()`は`INFINITY`マクロの値と等しい。

## 戻り値

`has_infinity() != false` の場合、正の無限表現。

`has_infinity() == false` の場合、有意な値を返さない。

## 例外

投げない

## 備考

`is_iec559() != false` の場合、必ず `has_infinity() != false` であるため、本関数の戻り値も必ず有意である（正の無限大を返す）。

## 例

    #include <iostream>
    #include <limits>

    int main()
    {
      constexpr float f = std::numeric_limits<float>::infinity();
      constexpr double d = std::numeric_limits<double>::infinity();

      std::cout << "float : " << f << std::endl;
      std::cout << "double : " << d << std::endl;
    }

### 出力例

    float : 1.#INF
    double : 1.#INF

## 参照

- `numeric_limits::has_infinity`