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

  • Gan Eden Productions

    Gan Eden Pro

    11 HAZİRAN 2011
  • How To Cook That

    How To Cook

    16 NİSAN 2011
  • Michael Lummio

    Michael Lumm

    25 Mayıs 2007