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

  • HTC

    HTC

    12 Ocak 2006
  • SavageLuxxxGaming - Daily NBA 2K15 & NBA Live 15 Enjoy And Subscribe!

    SavageLuxxxG

    11 Ocak 2013
  • Thom Hall

    Thom Hall

    24 Kasım 2006