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

  • GFX Tutorials

    GFX Tutorial

    12 AĞUSTOS 2013
  • Incredible Tutorials

    Incredible T

    27 EKİM 2006
  • sghaff1

    sghaff1

    23 Mart 2009