Nasıl nesne bir dize özelliğidir dayanarak böyle büyük mükafat koşullu kesme noktası ayarlamak için?
Belirli bir dize maç ulaştığında hata ayıklayıcı ara vermek mümkün olmak istiyorum. Örnek olarak, böyle bir şey olabilir:
Foo myObj = [self gimmeObj];
myObj
özelliği name
aramıştır. Hata ayıklayıcı atama ne zaman üzerinde durmak istiyorum
[myObj.name isEqualToString:@"Bar"];
Nasıl böyle büyük mükafat olarak şartlı kesme ayarlayabilirim?
CEVAP
Normalde kesme ayarı Güncellemelerinden koşullu bir kesme noktası ayarlamak, tıklayın ve (- ^Çalıştır . Kesme Düzenleme seçebilirsiniz Show ->Kesme noktaları).
Kesme girişi, Durumu bir sütun var.
Şimdi, bu durum için akılda tutulması gereken birkaç konu vardır. Öncelikle gdb sözdizimi nokta anlamak değil, bu yüzden myObj yerine.adı kullanmanız gerekir [myObj adı] ad ıvar sürece).
Sonraki, gdb çoğu ifadeler olduğu gibi, sonuç türü, yani söylemek gerekir. "BOOL Bu gibi bir durum:
(BOOL)[[myObj name] isEqualToString:@"Bar"]
Çoğu aslında sadece geçici olarak kod ekleyerek kod bunu yapmak için daha kolay gibi
if ( [myObj.name isEqualToString:@"Bar"] ) {
NSLog( @"here" );
}
ve sonra aradan ayarı NSLog işaretleyin. O zaman durumunuz olabilir gdb ve ayrıştırabilir mi ne hakkında endişelenmenize gerek kalmadan keyfi karmaşık olabilir.
Nasıl char* x eşittir bir dize işaret ...
Nasıl download 4 / 5 / 6 / 7 böyle büy...
Nasıl böyle büyük mükafat olarak NSZom...
Nasıl böyle büyük mükafat düzenleyici ...
Nasıl dize karşılaştırırken büyük / kü...