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

  • eisleyhead

    eisleyhead

    11 Ocak 2006
  • huyked

    huyked

    28 Mart 2008
  • Theodore Leaf

    Theodore Lea

    29 AĞUSTOS 2006