2011-01-05 76 views

回答

1

如果阵列中元件的数量是固定的,然后

+ (void)someMethod:(MyClass *[])array; 

是足够的。否则,传递数组中元素的数目:

+ (void)someMethod:(MyClass *[])array count:(NSUInteger)count; 

为了使用上述方法,

MyClass *array[TOTAL]; 
array[0] = …; 
array[1] = …; 
… 
array[TOTAL - 1] = …; 

[MyClass someMethod:array]; 

[MyClass someMethod:array count:TOTAL]; 
1

类方法以+开头。使得它需要一个数组作为参数做同样的方式,你会在C或Objective-C的任何其他指针的服用方法/功能做到这一点:

+ (void)myClassMethod:(MyClass **)arrayOfMyClassPointers; 

这是一个有点陌生,可使用C风格的数组来保存指向对象的指针,但是 - 你真的想要做什么?

3

这是非常非典型传递一个语言阵列完整的Objective-C对象或类到一个方法。

我建议:

+ (void) classMethod: (NSArray *) arrayOfClasses; 

和:

[MyClass classMethod: [NSArray arrayWithObjects: [Foo class], [Bar class], nil]];