gpt4 book ai didi

objective-c - 如何在 obj-c 中交换两个数组

转载 作者:行者123 更新时间:2023-12-04 02:55:35 24 4
gpt4 key购买 nike

这是在 Objective C 中交换两个 ivar 数组的便捷方法吗?

- (void) foo {
NSArray *aux;
aux = array1;
array2 = array1;
array1 = array2;
}

还有其他选择吗?在某些情况下可能会出现与retainCount相关的问题吗?我很困惑,因为在我正在审查的程序中,交换是通过以下方式完成的:

- (void) foo {
NSArray *aux;
aux = array1;
[aux retain];
array2 = array1;
array1 = array2;
[aux release];
}

最佳答案

它们都不起作用,您没有在任何地方使用 aux 变量,最后它们都将指向相同的内存位置,请执行以下操作:

- (void) foo {
NSArray *aux;
aux = array1;
array1 = array2;
array2 = aux;
}

关于objective-c - 如何在 obj-c 中交换两个数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6918062/

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