次のようなクラス定義ヘッダー ファイルがあるとします。
#import <UIKit/UIKit.h>
@interface AppDelegate : UIResponder <UIApplicationDelegate>
@property (strong, nonatomic) UIWindow *window;
@property (readonly, strong, nonatomic) SomeObject *managedObject;
@end
ゲッター/セッターを作成するために managedObject で @synthesize を定義する代わりに、私の友人は、クラス拡張を使用して次のヘッダー定義を実行して、合成をよりクリーンに行うことができると教えてくれました。
#import "TSPAppDelegate.h"
@interface TSPAppDelegate () //notice the class extension here
@property (strong, nonatomic) SomeObject *managedObject; //this will already be synthesized since its an extension
@end
拡張機能を使用してこれがどのように機能するかを誰かが説明できますか?