Pourquoi certains types manquent de modificateurs littéraux
En C#, les types intégraux comme long int ont des modificateurs littéraux, tandis que d'autres comme short int n'en ont pas. Cette distinction pose la question de savoir pourquoi certains types possèdent cette fonctionnalité et pas d'autres.
Le principe de conception de C# est que les fonctionnalités sont absentes par défaut et doivent être justifiées par leurs avantages. Dans le cas des modificateurs littéraux, leurs avantages s'appliquent aux types tels que les types longs et non signés, car ils permettent de spécifier avec précision la taille entière ou la signature prévue.
Justification des modificateurs sur les types longs et non signés
La grande majorité des calculs d'entiers impliquent des entiers signés 32 bits, qui sont gérés efficacement par le matériel. C# utilise par défaut cette représentation. Cependant, pour les calculs nécessitant des plages plus grandes, des entiers longs sont utilisés et un modificateur permet d'indiquer clairement cette taille prévue.
De plus, les scénarios d'interopérabilité et la manipulation de champs de bits nécessitent de spécifier des entiers non signés. Encore une fois, les modificateurs fournissent une méthode concise pour indiquer la signature souhaitée ou son absence.
Manque de justification pour les modificateurs sur court
En revanche, les entiers courts ne nécessitent pas de modificateur parce que :
Les avantages des modificateurs ne s'étendent pas aux types courts. Étant donné que l'arithmétique n'est pas effectuée dans les shorts et que les littéraux peuvent déjà être utilisés avec les shorts, il n'y a aucune justification impérieuse pour l'introduction d'un modificateur short.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!