Bu soruyu tam olarak nasıl koyacağımı bilmiyorum. stringWithFormat:
veya predicateWithFormat:
gibi bir yöntem oluşturmak istiyorum, yani yöntemim argümanları doğrudan biçim belirticileri olan bir dize olarak kabul eder. Bunu nasıl başarabilirim?Doğrudan argüman olarak formatlı dizeleri kabul eden bir yöntem nasıl oluşturulur?
Ör
-(void) someMethod: (NSString *)str, format;
Yani sonradan çağırabilir o gibi:
[someObject someMethod:@"String with format %@",anotherString];
Bu herhangi bir bağlamda ilgili olarak değil.
Ben benzer bir kod ile predicateWithFormat
çalışıyordu: Bu işe yaramadı
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"name like myName"];
ama: Yani bu
NSString *str = @"myName";
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"name like %@",str];
:
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"name like 'myName'"];
benzer çalıştı yöntem, verilen argümanın bize formatı belirlediğini anlayabileceği anlamına gelir onların içinde. Merak ediyorum, bu nasıl yapılabilir?
Lütfen varargs makrolarını açıklar mısınız? Ben objektif-c için oldukça yeniim. – Rakesh
@Rakesh Varargs, Objective-C değildir, bunlar C'dir. Bu sayfaya bakın: http://www.eskimo.com/~scs/cclass/int/sx11b.html – trojanfoe
çok teşekkürler! anladım. – Rakesh