Cocoa Controller导入Model,Model import Controller - >例外

时间:2010-05-20 12:31:44

标签: objective-c cocoa model-view-controller import

为什么在Cocoa中两个类都不能相互导入? 我尝试了以下代码:

或者Controller.h:

#import <Cocoa/Cocoa.h>
#import "Model.h"

@interface Controller : NSObject {
 Model *model;
}

@end

Model.h:

#import <Cocoa/Cocoa.h>
#import "Controller.h"

@interface Model : NSObject {
 Controller *controller;
}

@end

引发了以下例外情况:

error: expected specifier-qualifier-list before 'Controller'
error: expected specifier-qualifier-list before 'Model'

有人可以解释一下这是为什么吗?

谢谢! xonic

2 个答案:

答案 0 :(得分:0)

解决方法是: Model.h:

#import <Cocoa/Cocoa.h>
#import "Controller.h"

@class Controller;
@interface Model : NSObject {
 Controller *controller;
}

@end

你完成了

答案 1 :(得分:0)

解释原因?否。

但解决方法是使用@class声明:

@class Model;
@interface Controller : NSObject {
 Model *model;
}
@end