1

我有四个完全相同的屏幕,除了它们使用四个不同的类。我想我可以通过将此属性放在我的标题中来将它们减少到一个:

@property Class *classType;

然后我可以设置课程并完成。

但是,当我尝试使用 classType 时,如下所示:

NSArray *myArray = [classType allobjects];

我得到以下信息:“接收器类型错误 __unsafe_unretained 类 *”

这真的没有多大意义。类方法返回和 NSArray。当我使用显式类名时,没有错误,一切正常。

我正在使用带有 ARC 的 xcode 4.5。

4

2 回答 2

4

尝试使用

@property Class classType;

注意缺少的 *. 类就像id,指针类型是隐含的。

于 2012-10-06T21:58:13.700 回答
0

在 Google 上快速搜索,在运行时的标头中甚至更好:

typedef struct objc_class *Class;

类型本身就是一个指针——声明属性时Class不需要额外的*符号。

于 2012-10-06T22:22:09.157 回答