2008-09-23 7 views
60

Je suis sûr à 90% que j'ai vu cette réponse sur stackoverflow avant, en fait je n'avais jamais vu le "int?" syntaxe avant de le voir ici, mais peu importe comment je recherche, je ne trouve pas le post précédent, et ça me rend fou.Quelle est la différence entre 'int?' et 'int' en C#?

Il est possible que je mange des champignons par hasard, mais si ce n'est pas le cas, quelqu'un peut-il signaler le post précédent s'il peut le trouver ou le réexpliquer? Mon recherche-fu stackoverflow est apparemment trop faible ....

Répondre

97

int? est un raccourci pour Nullable<int>.

This peut être le poste que vous recherchiez.

21

int? est la même chose que Nullable. Cela vous permet d'avoir des valeurs "nulles" dans votre int.

6

int appartient à System.ValueType et ne peut avoir null comme valeur. Lorsque vous traitez avec des bases de données ou d'autres types où les éléments peuvent avoir une valeur nulle, il peut être utile de vérifier si l'élément est nul. C'est quand int? entre en jeu. int? est un type nullable qui peut avoir des valeurs allant de -2147483648 à 2147483648 et null.

Référence: https://msdn.microsoft.com/en-us/library/1t3y8s4s.aspx

Questions connexes