我正在开发一个 iPhone 应用程序,我对 Objective-C 以及 class.h 和 class.m 结构有点陌生。
现在,我有两个类,它们都需要具有另一个类型的变量。但这似乎是不可能的。
如果在class1.m(或class2.m)中我包含class1.h,然后包含class2.h,则我无法在class1.h中声明class2变量,如果我包含class2.h然后包含class1.h,我可以' t 在 class2.h 中声明 class1 变量。
希望你明白我的想法,因为这让我发疯。难道这件事真的不可能实现吗?
Thanks.
您可以使用@class
关键字在头文件中前向声明一个类。这使您可以使用类名来定义实例变量,而无需#import
头文件。
Class1.h
@class Class2;
@interface Class1
{
Class2 * class2_instance;
}
...
@end
Class2.h
@class Class1;
@interface Class2
{
Class1 * class1_instance;
}
...
@end
请注意,您仍然需要#import
.m 文件中相应的头文件
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)