Xcodeの最後のアップデート(v4.6への)以来、私は次の警告をたくさん持っています:
"Direct comparison of string a literal has undefined behavior"
これは、NSStringプロパティが次の方法で別の文字列と比較される場合です。
if ([self.myString isEqualToString:@"Compare Me"]) { ...
もともと比較しましself.myString == @"Compare Me"
たが、同じ警告があります。XcodeはisEqual:
代わりに使用することをお勧めします。
なぜこれをすべきなのかしら。他の比較は引き続き機能します。例:
if ([segue.identifier isEqualToString:@"nextScreen"]) { // => NO WARNING HERE
編集:OK、信じない/反対票を投じる人は、このスクリーンショットを参照してください: