UnKnown类型检查和未知类型AppDelegate错误

时间:2012-03-11 16:01:14

标签: iphone objective-c

以前i posted a question in SO,不知道导致此错误的原因。后来我创建了一个新项目并重新创建了错误。这就是它所说的;

我收到一个名为Unknown type name Exam的错误。我在另一个标题下发布了一个问题。但现在我发现了问题所在(我创建了另一个问题,希望人们不会反对这一举动,并为我提供解决问题的方法:))

我创建了一个新项目,以找出问题所在。

我创建了一个名为NSObject的{​​{1}}类。

在AppDelegate.h中

我添加了以下内容;

Exam
在AppDelegate.m中的

我只有综合 #import <UIKit/UIKit.h> #import "Exam.h" @interface AppDelegate : UIResponder <UIApplicationDelegate, UITabBarControllerDelegate>{ Exam *ex; } @property (strong, nonatomic) UIWindow *window; @property (strong, nonatomic) Exam *ex; @property (strong, nonatomic) UITabBarController *tabBarController; @end ,所以我不会在这里粘贴该代码。

现在在Exam类(NSObject类)中,我有以下代码;

ex

只要我在这里创建#import "AppDelegate.h" #import <Foundation/Foundation.h> @interface Exam : NSObject { AppDelegate*APP; <-- here i get Unknown type AppDelegate. } @end 对象,我就会收到错误。

注意:我正在使用ARC

1 个答案:

答案 0 :(得分:9)

Exam.h 更改为

#import <Foundation/Foundation.h>

    @class AppDelegate

    @interface Exam : NSObject {
       AppDelegate*APP; <-- here i get Unknown type AppDelegate.
    }

    @end

然后@implementation以上的 Exam.m 执行此操作

    #import "AppDelegate.h"
// Rest is same
    @implementation ... 

目前你在App.hgate.h中导入了Exam.h,在Exam.h中导入了AppDelegate.h。这使得两个类在执行之前互相导入..这会导致编译错误..因为每个类都引用另一个..