我正在开发一个Objective-C,我需要将self
的引用传递给子对象。例如在Java中,如果我要在一个方法中执行此操作,我可以说room.place(this);
我如何在Objective-C中做这样的事情。我知道我可以将self
作为方法参数传递,但子对象需要#import
另一个类,当它们互相导入时,我开始出错。任何帮助将不胜感激。
答案 0 :(得分:4)
如果两个类需要导入彼此的头文件,则可以使用前向声明。
这种方法的工作方式是在子标题文件中,你可以这样设置:
@class MyParentClass; // This is the forward declaration.
@interface MyChildClass
@property (nonatomic, strong) MyParentClass *parent;
@end
在子.m文件中,您可以像往常一样#import "MyParentClass.h"
。在MyParentClass.h中,您可以只#import "MyChildClass.h"
答案 1 :(得分:1)
你没有#import
一堂课。你#import
一个文件 - 总是一个标题。每个类的.m文件都应该导入另一个类的.h文件,它可以正常工作。