Ios Objective-C中的返回浮点数组

Ios Objective-C中的返回浮点数组,ios,arrays,memory-management,floating-point,Ios,Arrays,Memory Management,Floating Point,我想知道如何在方法中返回浮点数组 在以下方法中: - (float *) ......{ float * result = malloc(sizeof(float) * number); .... return result; } 我的问题是我没有清理结果浮点数组。我怎样才能做到这一点呢?苹果公司有一个方法名称约定,描述了如何做到这一点。在您的情况下,您必须以create前缀启动方法,并在不再需要时清理分配的内存: float* CreatePointsArray()

我想知道如何在方法中返回浮点数组

在以下方法中:

- (float *) ......{
    float * result = malloc(sizeof(float) * number);
    ....
    return result;
}

我的问题是我没有清理结果浮点数组。我怎样才能做到这一点呢?

苹果公司有一个方法名称约定,描述了如何做到这一点。在您的情况下,您必须以
create
前缀启动方法,并在不再需要时清理分配的内存:

float* CreatePointsArray()
{
    float* result = malloc(sizeof(float) * number);
    ....
    return result;
}
...
points = CreatePointsArray();
...
free(points);
看更多
最好将其放入标准
NSArray
。但是,如果您这样做,最好是使用函数而不是方法类

我的问题是我没有清理结果浮点数组

这就是调用返回浮点数组的方法的人的工作:现在他拥有它,所以他必须对它调用
free

一般来说,有两种情况:

  • 在另一个方法或函数中使用数组而不存储它-在这种情况下,确定方法或函数中不再需要数组的点,并调用
    free()
    将数组传递给它
  • 将数组作为实例变量存储在一个对象中——在这种情况下,向类中添加一个
    dealloc
    方法,并从那里调用数组变量的
    free()

@iravivooda:这是一个毫无用处的评论。OP要求在Objective-C中执行一项特定的任务,而不是琐碎的任务。指向Objective-C文档的顶部站点是没有帮助的。