SORU
7 NİSAN 2010, ÇARŞAMBA


Soru ve iki nokta üstüste işareti (?: operatör üçlü) yani objective-c?

Bu kod satırı ne anlama geliyor?

label.frame = (inPseudoEditMode) ? kLabelIndentedRect : kLabelRect;

Bu ? ve : beni karıştırmayın.

CEVAP
7 NİSAN 2010, ÇARŞAMBA


Bu C ternary operator (Objective-C, C'nin bir üst kümesidir)

label.frame = (inPseudoEditMode) ? kLabelIndentedRect : kLabelRect;

anlamsal eşdeğerdir

if(inPseudoEditMode) {
 label.frame = kLabelIndentedRect;
} else {
 label.frame = kLabelRect;
}

Hayır ilk öğe (örneğin variable ?: anotherVariable) ile üçlü (valOrVar != 0) ? valOrVar : anotherValOrVar ile aynı anlamda

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • LiquidMusick

    LiquidMusick

    23 Aralık 2010
  • Mr_BrettHooge

    Mr_BrettHoog

    3 Ocak 2011
  • Viktorija A.

    Viktorija A.

    28 Mart 2009