Quelle est la différence entre 'int?' et de 'int' en C#?
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 pas n'importe comment, je recherche je ne trouve pas le post précédent, et ça me rend fou.
Il est possible que j'ai mangé de la drôle de champignons par accident, mais si je ne suis pas, quelqu'un peut s'il vous plaît signaler le post précédent, si ils peuvent le trouver ou re-expliquer? Mon stackoverflow de recherche-fu est apparemment trop faible....
Vous devez vous connecter pour publier un commentaire.
int? est une abréviation pour
Nullable<int>
.Cette peut-être le poste que vous recherchez.
int? est Nullable.
MSDN: Utilisation De Types Nullables (Guide De Programmation C#)
int? c'est la même chose que d'accepter les valeurs null. Il vous permet d'avoir la valeur "null" des valeurs de type int.
int appartient au Système.ValueType et ne peut pas avoir la valeur null. 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 null. C'est lorsque les 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
le symbole ? après l'int signifie qu'il peut accepter les valeurs null.
L' ? le symbole est généralement utilisé dans les situations où la variable peut accepter une valeur null ou un nombre entier ou, sinon, de retour d'un nombre entier ou nul.
Espère que le contexte d'utilisation de l'aide. De cette façon, vous n'êtes pas limité uniquement à traiter avec des entiers.
vous pouvez l'utiliser quand vous vous attendez à une valeur null dans votre entier en particulier lorsque vous utilisez un CASTING
ex:
si y = null alors vous aurez une erreur.
vous devez utiliser:
Int ne peut pas accepter null, mais si les développeurs sont à l'aide de l'int? ensuite, vous stocker la valeur null dans int
comme
int i = null; //ne pas accepter
int? j' = null; //son travail
surtout l'utilisation de la pagination dans MVC Pagelist