0

appDelegateをクラスにインポートし、同じクラスをappDelegateにインポートした結果を知りたいです。なぜなら、私は自分のアプリケーションでこれを正常に実行していますが、実行しないことをお勧めします。たくさん検索しても答えが見つかりませんでした。

前もって感謝します。

4

1 に答える 1

6

それは可能ですが、ヘッダーのインポート方法には注意してください。これは推奨される方法です:

AppDelegate.h :

// Import headers here

@class MyViewController;

@interface AppDelegate : NSObject <UIApplicationDelegate> {
    MyViewController *viewController;
}

- (void)someMethod;

@end

AppDelegate.m :

#import "AppDelegate.h"
#import "MyViewController.h"

@implementation AppDelegate

//Your code here

@end

MyViewController.h :

// Import headers here

@class AppDelegate;

@interface MyViewController : UIViewController {
    AppDelegate *appDelegate;
}

@end

MyViewController.m :

#import "MyViewController.h"
#import "AppDelegate.h"

@implementation MyViewController

// Your code here

@end

ご覧のとおり、 を使用@classしてヘッダーでクラスを宣言し、ヘッダーを.mファイルにインポートします。これにより、必要のないものをインポートしないことが保証されます。ビュー コントローラー ヘッダーをアプリ デリゲートのヘッダーにインポートすると、アプリ デリゲートのヘッダーをインポートしたものにインポートされます。.mすべてのインポートをファイルに残すことで、そのような状況を防ぎます。

于 2010-07-09T14:01:38.047 に答える