Objective-C - 传递self到child对象的引用

时间:2013-01-23 05:59:36

标签: ios objective-c macos reference

我正在开发一个Objective-C,我需要将self的引用传递给子对象。例如在Java中,如果我要在一个方法中执行此操作,我可以说room.place(this); 我如何在Objective-C中做这样的事情。我知道我可以将self作为方法参数传递,但子对象需要#import另一个类,当它们互相导入时,我开始出错。任何帮助将不胜感激。

2 个答案:

答案 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文件,它可以正常工作。