Objective-C でセレクターを使用する方法を学習する演習を行っています。
このコードでは、2 つの文字列を比較しようとしています。
int main (int argc, const char * argv[])
{
@autoreleasepool
{
SEL selector= @selector(caseInsensitiveCompare:);
NSString* str1=@"hello";
NSString* str2=@"hello";
id result=[str1 performSelector: selector withObject: str2];
NSLog(@"%d",[result boolValue]);
}
return 0;
}
しかし、それはゼロを出力します.なぜですか?
編集:
str2 を @"hell" に変更すると、EXC_BAD_ACCESS が発生します。