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

  • BumbleDroid

    BumbleDroid

    18 EKİM 2010
  • pleated-jeans

    pleated-jean

    6 HAZİRAN 2013
  • Rooster Teeth

    Rooster Teet

    11 Temmuz 2006