2008-09-23 33 views
60

Estoy 90% seguro de haber visto esta respuesta en stackoverflow antes, de hecho, nunca había visto el "int". sintaxis antes de verlo aquí, pero no importa cómo busco, no puedo encontrar la publicación anterior y me está volviendo loco.¿Cuál es la diferencia entre 'int'? y 'int' en C#?

Es posible que haya comido hongos divertidos por accidente, pero si no lo estoy, ¿alguien puede señalar la publicación anterior si pueden encontrarla o volver a explicarla? Mi stackoverflow search-fu es aparentemente muy bajo ....

Respuesta

97

int? es una abreviatura de Nullable<int>.

This puede ser la publicación que estaba buscando.

21

int? es lo mismo que Nullable. Le permite tener valores "nulos" en su int.

6

int pertenece a System.ValueType y no puede tener nulo como valor. Al tratar con bases de datos u otros tipos donde los elementos pueden tener un valor nulo, podría ser útil verificar si el elemento es nulo. Eso es cuando int? entra en juego. ¿En t? es un tipo anulable que puede tener valores que van desde -2147483648 a 2147483648 y nulo.

Referencia: https://msdn.microsoft.com/en-us/library/1t3y8s4s.aspx

Cuestiones relacionadas