C# 'da yeniyim ve nesnelerin C#' de sıfır olabileceğini öğrendim ancak int
yapamıyorum.Neden int null olamaz? N # n nl ile int (int?) C# içinde nasıl çalışır?
Ayrıca nasıl oluyor C# null int (int?
) çalışacak mı?
C# 'da yeniyim ve nesnelerin C#' de sıfır olabileceğini öğrendim ancak int
yapamıyorum.Neden int null olamaz? N # n nl ile int (int?) C# içinde nasıl çalışır?
Ayrıca nasıl oluyor C# null int (int?
) çalışacak mı?
int
temel bir tür olması ve sadece ReferenceType
s (nesneler) null bulunmaktadır. Bir nesnenin sararak bir int
Nullable yapabilirsiniz:
System.Nullable<int> i;
-veya-
int? i;
http://msdn.microsoft.com/en-us/library/2cf62fcy(v=vs.80).aspx
Nesneler referans türleridir ve onlar hiçbir şey NULL başvurabilir, ancak int yalnızca bir değeri tutabilir ve referans şey olamaz bir değer türüdür. int
gibi
Değer türleri doğrudan değerleri yerine ReferenceType
gibi referanslar içerebilir. Bir değer boş olamaz ancak bir referans boş olabilir, yani hiçbir şey göstermez. Bir değerin içinde hiçbir şey olamaz. Bir değeri her zaman
Null veya null tip değer türleri normal değerlere ilave olarak, aynı zamanda, sadece başvuru türleri
bir int bir değer türü gibi ek boş değer destek özel bir değer türleridir değer bir tür içerir. Gerçekten Int32 tipi. NULL olabilecek nesneler referans türleridir. Temel seviyedeki fark, bir değer tipinin, bir referans tipinin değere bir referansı saklayacağı bir değerle değeri depolayabilmesidir. Bir referans boş olabilir, bu bir değere işaret etmemesi anlamına gelir. Bir değer türünün her zaman bir değeri vardır.
Nullable, boş olma seçeneğine sahip olmanızı sağlamak için bir değer türü sarar. Int kullanarak? NULL bir tür bildirmek için sadece bir derleyici kısayoludur.
İlkel int türü, ikili gösteriminde boş ifade edemez, ama Nullable<int>
bu değerin boş bilgiyi ifade etmek ekstra bir bit ekledi.
Birisi aşağı oy vermenin sebebini göstermesi gerektiğini verir. Nullable
Reddetmedim, ancak herhangi bir destekleyici belge olmadan bellek düzeniyle ilgili belirsiz bir gerçeği gerekçe göstermiş olabilir. Aksi halde emin değilim. – recursive
Sen int kullanarak bir null int sahip olabilir? veya Nullable<int>
her ikisi de aynı şeydir.
C# 'da iyi bir kitaba yatırım yapardım. Bunun gibi temel sözdizimi ile ilgili çok fazla soru sormak zorundasınız ve SO üzerinde bireysel olarak sormak çok zaman alacaktır. –
http://stackoverflow.com/questions/6191339/why-type-int-is-never-equal-to-null – Bart
@Bart: Gördüğüm o ki, bir jleedevin bir kopyası olarak kapatıldı, ama bu soru C# ile null değer değerlerine çok daha özgüdür ... – BoltClock