一部の型にリテラル修飾子がない理由
C# では、long int などの整数型にはリテラル修飾子があり、short int などの他の型にはリテラル修飾子がありません。この区別により、なぜ特定の型にこの機能があり、他の型にはないのかという疑問が生じます。
C# の設計の背後にある原則は、機能はデフォルトでは存在せず、その利点によって正当化される必要があるということです。リテラル修飾子の場合、その利点は、目的の整数のサイズや符号付きを正確に指定できるため、long 型や unsigned 型などの型にも当てはまります。
long 型や unsigned 型の修飾子の正当性
整数計算の大部分には 32 ビットの符号付き整数が含まれており、これらはハードウェアによって効率的に処理されます。 C# のデフォルトはこの表現です。ただし、より大きな範囲を必要とする計算の場合は長整数が使用され、修飾子を使用してこの意図したサイズを明確に示すことができます。
さらに、相互運用シナリオとビット フィールド操作では符号なし整数を指定する必要があります。繰り返しますが、修飾子は、意図した符号の有無またはその欠如を示す簡潔な方法を提供します。
short での修飾子に対する正当性の欠如
対照的に、short 整数には、修飾子の理由:
修飾子の利点は short 型には適用されません。 short では算術演算は行われず、リテラルはすでに short で使用できるため、short 修飾子を導入する説得力のある正当化はありません。
以上がC# ではなぜ「short」整数にリテラル修飾子がないのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。