Abb*_*bas 3 c++ objective-c nsarray
我需要调用一个cpp函数
void myFunc(float **array2D, int rows, int cols)
{
}
Run Code Online (Sandbox Code Playgroud)
在objective-c对象中.基本上,当我创建NSArray对象时,数组是在我的objective-c代码中创建的.现在,问题是如何将此数组传递给我的cpp函数.
我对这些混合c ++/objective-c的东西有点新,所以任何提示都会受到高度赞赏.
谢谢
我想你必须将其转换NSArray为普通的C数组.就像是:
NSArray *myNSArray; // your NSArray
int count = [myNSArray count];
float *array = new float[count];
for(int i=0; i<count; i++) {
array[i] = [[myNSArray objectAtIndex:i] floatValue];
}
Run Code Online (Sandbox Code Playgroud)
或者,作为评论者建议(假设您的NSArray包含NSNumbers):
NSArray *myNSArray; // your NSArray
int count = [myNSArray count];
float *array = new float[count];
int i = 0;
for(NSNumber *number in myNSArray) {
array[i++] = [number floatValue];
}
Run Code Online (Sandbox Code Playgroud)