将包含 NSString*
的 c 风格数组传递给 objective-c 方法的最佳语法是什么?这是我目前正在使用的:
- (void) f:(NSString **) a {
}
- (void) g {
NSString* a[2] = {@"something", @"else"};
[self f:a];
}
最佳答案
您唯一的其他选择如下:
- (void) f:(NSString* []) a {
}
编译时是一样的。我不知道“最好”是什么,但我更喜欢这个版本的可读性。更容易推断您传递的指针旨在用作数组。指向指针的指针在其他地方有不同的用途(请参阅 iOS SDK 中使用的各种 NSError**
参数),因此区分是有帮助的。
关于用于传递 NSString 的 c 风格数组的 Objective-c 语法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10540521/