在Objective C中,有一个Class结构,它充当指向任何类实现的指针。在Objective C,它的定义为:Objective C铸造类结构指针指向具体类
typedef struct objc_class *Class;
我想上课的阵列,我试图通过Array类迭代以及执行静态函数。一些示例代码如下:
//Each class is subclassed from the same abstract class with a function specialStaticFunction
NSArray *array = [[NSArray alloc] initWithObjects:Class1, Class2, Class3];
for(Class tempClass in array)
[tempClass specialStaticFunction];
}
当运行该代码时,我得到警告,因为不是每个类都有一个名为specialStaticFunction的函数。所以我想知道如何建立一个类或者如何有人可能绕过这个警告。
我不认为这实际上是你得到的错误。这很好,它发送的信息并不是每个班级都会回应。什么是实际的错误? – Chuck
“我得到警告是因为不是每个类都有一个名为specialStaticFunction的函数”不是。编译器不检查发送到“Class”类型的消息。 – newacct
另外,你的代码是错误的,因为'initWithObjects:'的参数必须以'nil'终止。 – newacct