gpt4 book ai didi

ios - 将指针位置和长度转换为数组

转载 作者:行者123 更新时间:2023-11-28 19:06:17 25 4
gpt4 key购买 nike

抱歉,如果这应该是显而易见的,但我没有找到答案。这是我正在使用的一些代码的一部分,我保存了对 tempData 的引用和长度。我需要知道如何使用该引用和长度来稍后检索 CGPoints。这可能吗?感谢您的帮助!

- (void)setData:(float *)theData length:(int)length {

CGPoint *tempData = (CGPoint *)calloc(sizeof(CGPoint), length);
for(int i = 1; i < length - 1; i++) {
tempData[i] = CGPointMake(i, theSampleData[i]);
}
}

最佳答案

好的,您正在动态分配内存并使用它来存储值。当然,您可以这样做。

不是让您的 setData 方法创建局部变量 tempData,而是让 tempData 成为您的类的实例变量。在您的 init 方法中将其设置为 nil。还要使您的长度变量成为实例变量并将其初始化为零。

在您的 setData 方法中,分配指针并将您的数据保存到它。同时保存长度。

然后,在您类(class)的任何其他地方,您可以简单地索引到您的 tempData 变量,就像您设置值一样。

为检查 tempData 是否为 nil 的类编写 dealloc 方法。如果不是,请释放它。

这是使用 malloc 内存(或 calloc 内存 - 同样的东西)和指针的基本 C 内存管理。

关于ios - 将指针位置和长度转换为数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20296051/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com