1. ホーム
  2. c++

[解決済み】C++でint型に無限大を設定する

2022-01-17 08:59:08

質問

を持っています。 int a に等しいことが必要です。これは、もし

int b = anyValue;

a>b は常に真である。

これを可能にするようなC++の機能はあるのでしょうか?

どのように解決するのですか?

整数は有限なので、残念ながら真の無限大を設定することはできません。 しかし、int型の最大値に設定することはできます。これは、他のint型と同じかそれ以上になることを意味します。

a>=b

は常に真である。

によって行うことになります。

#include <limits>

//your code here

int a = std::numeric_limits<int>::max();

//go off and lead a happy and productive life

これは通常、2,147,483,647と同じになります。

もし、本当に無限大の値が必要なら、doubleかfloatを使わなければなりません。その場合は、次のようにすればよい。

float a = std::numeric_limits<float>::infinity();

数値制限に関するその他の説明はこちらをご覧ください こちら

Happy Coding!

注:WTPが言ったように、もしどうしてもintが無限大になる必要があるなら、intのラッパークラスを書いて比較演算子をオーバーロードする必要があります。