SORU
23 Kasım 2011, ÇARŞAMBA


&; if (() & & b=!" null)" will " ()&; her zaman değerlendirilecek?"

Böyle bir kod var:

if (a() && b != null) {
    b.doSomething();
}

b null bile a() yan etkisi ihtiyacım var. C ile garanti altına alınmıştır.? Ya da C ** 6 ** 7 *ihmal* 5 * diyebilir?

CEVAP
23 Kasım 2011, ÇARŞAMBA


Evet, a() Her zaman değerlendirilecektir.

Durumu doğru, a() soldan değerlendirilir beri her zaman değerlendirilir, ancak b != null a() true iade halinde değerlendirilir.

İşte C senin için tam özellik bir referans,# Dil Belirtimi sürüm 3.0. Vurguları ve benim elisions.

7.11.1 koşullu mantıksal operatörler Boolean

&& || işlenen 15 ** tür olduğunda [...] işlemi aşağıdaki gibi işlenir

  • Operasyon x && y x ? y : false olarak değerlendirilir. Başka bir deyişle, x içinde ilkdeğerlendirilmiş ve tip bool dönüştürülür. Daha sonrax doğruysa, y ve bool türü için değerlendirmeye dönüştürülür ve bu sonucu olur operasyon. Aksi takdirde, işlem sonucu false olur.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • 1881 Animation

    1881 Animati

    5 EKİM 2013
  • GoogleTechTalks

    GoogleTechTa

    15 AĞUSTOS 2007
  • Kyletiv7

    Kyletiv7

    28 Mayıs 2007

İLGİLİ SORU / CEVAPLAR