代码之家  ›  专栏  ›  技术社区  ›  NoCarrier

iPhone SDK-“不能将对象用作方法的参数”

  •  0
  • NoCarrier  · 技术社区  · 17 年前

    我的.h文件如下

    #import <Foundation/Foundation.h>
    
    @interface MyClass : NSObject {
    }
    - (void) addWidget: (Widget*)aWidget;
    @end
    

    举例来说,widget只是一个简单的类,它只包含几个字符串。显然,要么是我做错了什么,要么是被Java/C.*损坏了,因为当我尝试构建时,编译器告诉我,我不能把对象作为一个参数应用到一个方法中。

    有人知道我做错了什么吗?或者Objective-C方法不接受复杂类型?(说不是这样!)

    [更新] 好吧,这很奇怪……但我刚从构建菜单中选择了“清理”,现在错误消失了。啊……我这方面的误导。

    1 回复  |  直到 17 年前
        1
  •  3
  •   Chuck    17 年前

    该代码唯一的问题是该小部件没有在任何地方声明。你也应该 #import "Widget.h" 或放 @class Widget; 在使用类型之前。