【发布时间】:2011-08-24 00:52:13
【问题描述】:
我有一些代码,我的类继承自超类,到目前为止一切正常。每当我尝试使用任何超类变量时,都会出现错误,说它们未声明(在此函数中首次使用)。它只发生在我的一个子类中,并且看起来与其他子类完全相同。我想知道是否有什么明显的我应该知道的(对Objective-C来说很新)。基本代码是这样的 -
@interface mySuperClass : UIViewController {
BOOL myVar;
}
然后-
@interface mySubClass : mySuperClass {
}
@implementation mySubClass {
-(void)someMethod {
myVar = YES; // error here
}
@end
非常感谢任何帮助 - 如果您需要更多信息,请告诉我!谢谢。
【问题讨论】:
-
为什么不写出您遇到的确切错误?除了拼写错误和缺少
@ends 之外,这也应该有效。发布一个重现问题的最小完整示例。 -
很难发布任何有意义的东西,因为有很多代码,如果我注释掉变量,程序运行良好(除了变量对其他事物的影响......) .我想这可能是代码中更深层次的东西,但是有这么多我会觉得很难把它们全部发布出来!我将重建整个实现,看看我是否得到同样的东西。正如我所说,其他子类以同样的方式工作正常,我正在努力不把它归结为 XCode 4 错误......
-
嗯,也许你最终得到了一个奇怪的包含,它在界面中没有实例 var
myVar?您可以尝试查看有错误的预处理源文件,以查看mySuperClass的接口定义在其中的样子? -
非常感谢您的所有帮助,但不幸的是,这里的建议都没有找到问题的原因!我已经重新编写了代码(将整个代码复制并粘贴到一个新的.m 中,一点一点地查看是否出现错误),并且一直没有错误。它一定是一个 XCode 错误,可惜我浪费了一天时间和你所有的时间来发现。我要去吃冰淇淋了……
标签: objective-c compiler-errors superclass