0
私はちょっと混乱するために、これらのコードスニペットの以下の実行を見つけた:BigInteger.Pow()
の実装の違いは何BigInteger.Pow()とMath.Pow()の違いは何ですか?
BigInteger result = (BigInteger)Math.Pow(1000, 1000);
と:これは文句を言わないエラーなしでしかし、このいずれかをコンパイルします
BigInteger result = BigInteger.Pow(1000, 1000);
Math.Pow()
。どちらの場合も、我々はusing System.Numerics
です。
2番目のスローOverflowException BigIntegerは無限大を表すことはできません。
私の知る限り、Mathは通常のデータ型で使用されますが、BigIntegerはそれ自体の特殊な型です。複数の整数がまとめられているため、同じ関数を使用することはできません。 (BigIntegerメソッドが計算を行うBigIntegerを使用するのに対し、**この計算には十分な大きさの値を保持できない**標準データ型を使用するので、これを計算するとMathデータメソッドはオーバーフローします) –
エラーは何を伝えますか 'BigIntegerは無限を表すことができません。 ' – MethodMan
ドキュメントは不明ですか?どうして? –