__attribute__を使用することは、メソッドの特定のプロパティをコンパイラに示唆するための巧妙な方法です。
@interface MyClass : NSObject
- (NSString *)someString __attribute__((pure));
@end
@implementation
- (NSString *)someString __attribute__((pure)) {
return @"Hello";
}
@end
実装で を削除して__attribute__
もビルド警告は発生しません (以前のバージョンの Xcode にはあったと思いますが、そこにマークされていなくてもヘッダーにマークされている場合、コンパイラはすべての場合に属性を見つけますか?実装に含める方が良い方法はありますか?