0

次のようなクラス定義ヘッダー ファイルがあるとします。

#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

拡張機能を使用してこれがどのように機能するかを誰かが説明できますか?

4

1 に答える 1

-2

あなたの友人は間違っていると思います。ゲッター/セッターを実装するには @synthesize が必要です

于 2015-03-19T23:32:28.127 に答える