SORU
30 Mayıs 2012, ÇARŞAMBA


Neden Boş Dizeleri Bitiştirmek için Geçerli ama Ara "boş değil.() Olabilirdi"?

Bu geçerli bir C# kodu

var bob = "abc"   null   null   null   "123";  // abc123

Bu geçerli değildir C# kodu

var wtf = null.ToString(); // compiler error

Neden ilk ifade geçerli mi?

CEVAP
30 Mayıs 2012, ÇARŞAMBA


İlk tek nedeni çalışmak

MSDN:

Dize birleştirme işlemleri,C# derleyicisi boş bir dize boş bir dize olarak aynı şekilde davranır, ama orijinal boş dize değeri dönüştürmez.

binary operator: Daha fazla bilgi

İkili operatör bir veya her iki işlenen türü string zaman dize birleştirme gerçekleştirir.

Eğer dize birleştirme bir işlenen boş ise, boş bir dize yerine. Aksi halde, dize olmayan herhangi bir argüman ToString sanal yöntem tür nesneden devralınan çağırarak dize gösterimine dönüştürülür.

Eğer ToString verir null, boş bir dize yerine.

İkinci hatanın nedeni budur:

null (C# Reference) - null anahtar sözcüğü null başvuru, herhangi bir nesneye başvuran bir temsil eden bir edebi vardır. null referans tipi değişkenler için varsayılan değer.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • friendz.net

    friendz.net

    29 EKİM 2010
  • Apple&Tech Reviews & Giveaways

    Apple&Tech R

    12 Temmuz 2008
  • UrAvgConsumer

    UrAvgConsume

    1 Ocak 2012