Ich bin mir zu 90% sicher, dass ich diese Antwort schon vorher auf stackoverflow gesehen habe. Tatsächlich hatte ich noch nie das "int" gesehen. Syntax, bevor ich es hier sehe, aber egal wie ich suche, ich kann den vorherigen Post nicht finden, und es macht mich verrückt.
Es ist möglich, dass ich die lustigen Pilze versehentlich gegessen habe, aber wenn nicht, kann jemand den vorherigen Post bitte darauf hinweisen, ob er ihn finden oder neu erklären kann? Mein Stackoverflow-Suchfu ist anscheinend zu niedrig ....
int? ist die Abkürzung für Nullable<int>
.
Dies kann der Beitrag sein, nach dem Sie gesucht haben.
int? ist nullfähig.
MSDN: Verwenden von nicht zulässigen Typen (C # -Programmierhandbuch)
int? ist das gleiche wie Nullable. Damit können Sie "Null" -Werte in Ihrem Int.
int gehört zu System.ValueType und darf als Wert nicht null haben. Beim Umgang mit Datenbanken oder anderen Typen, bei denen die Elemente einen Nullwert haben können, kann es nützlich sein, zu prüfen, ob das Element Null ist. Das ist wann int? kommt ins Spiel. int? ist ein nullfähiger Typ, der Werte zwischen -2147483648 und 2147483648 und null haben kann.
Referenz: https://msdn.Microsoft.com/de-de/library/1t3y8s4s.aspx
das Symbol ? hinter dem int bedeutet, dass es nullwertfähig sein kann.
Das ? Symbol wird normalerweise in Situationen verwendet, in denen die Variable eine Null oder eine Ganzzahl annehmen kann oder alternativ eine Ganzzahl oder Null zurückgeben kann.
Hoffe, der Kontext der Nutzung hilft. Auf diese Weise sind Sie nicht nur auf den Umgang mit ganzen Zahlen beschränkt.
Int kann null nicht akzeptieren, aber wenn Entwickler int verwenden? dann speichern Sie null in int wie int i = null; // Int nicht akzeptieren? i = null; // wird hauptsächlich für die Paginierung in MVC Pagelist verwendet
sie können es verwenden, wenn Sie einen Nullwert in Ihrer Ganzzahl erwarten, insbesondere wenn Sie CASTING.
x= (int)y;
wenn y = null ist, wird ein Fehler angezeigt. Sie müssen verwenden:
x = (int?)y;