【问题标题】:Instance variables not available in sub-classes..?实例变量在子类中不可用..?
【发布时间】:2011-02-03 13:08:41
【问题描述】:

我尝试过删除缓存、清理所有目标等。 根据我的配色方案,我的超类中的实例变量以绿色突出显示,但编译器随后失败说

"score" (or whatever) undeclared"

如果我在一个方法中有两个引用,则只有第一个失败。如果我将它们排除在外,或者使用子类标头中的实例变量,则应用程序编译并运行良好。

它在 2 天前才开始工作。我想知道我是否不小心点击了一个打开了一些奇怪设置的快捷方式?

它在 3.2 iPad 模拟器中运行,如果这很重要的话。

这很奇怪..希望有人以前遇到过这种情况。

【问题讨论】:

    标签: iphone objective-c xcode ipad subclass


    【解决方案1】:

    听起来你的实例变量被声明为@private。这意味着只有那个确切的类可以访问它们。如果您希望子类访问 ivars 直接将 @protected 放在它们上方,例如

    @protected
    id myiVar;
    NSString *myStringIVar;
    

    【讨论】:

    • 好主意。但事实并非如此。复制项目给出了同样的问题,但复制代码有效..我将把它归结为“Xcode 怪异”
    猜你喜欢
    • 2017-09-26
    • 1970-01-01
    • 2019-02-01
    • 2015-08-13
    • 1970-01-01
    • 2018-05-21
    • 2015-10-07
    • 2017-07-11
    • 1970-01-01
    相关资源
    最近更新 更多