Anda dapat mengatur break point bersyarat di Xcode dengan mengatur breakpoint secara normal, kemudian control-klik di atasnya dan pilih Edit Breakpoint (pilih Run -> Show -> Breakpoints).
Di entri breakpoint, ada kolom Kondisi.
Nah, ada beberapa hal yang perlu diperhatikan untuk kondisi tersebut. Pertama, gdb tidak memahami sintaks titik, jadi alih-alih myObj.name, Anda harus menggunakan [nama myObj] (kecuali nama adalah ivar).
Selanjutnya, seperti kebanyakan ekspresi di gdb, Anda harus memberitahukan jenis hasil yang dikembalikan, yaitu "BOOL". Jadi tetapkan kondisi seperti:
(BOOL)[[myObj name] isEqualToString:@"Bar"]
Seringkali sebenarnya lebih mudah untuk melakukan ini dalam kode dengan menambahkan kode sementara seperti:
if ( [myObj.name isEqualToString:@"Bar"] ) {
NSLog( @"here" );
}
dan kemudian mengatur break point pada NSLog. Kemudian kondisi Anda dapat menjadi sangat kompleks tanpa harus khawatir tentang apa yang dapat dan tidak dapat diurai oleh gdb.