gpt4 book ai didi

ios - 这个 NSMutableArray alloc&init 是如何工作的?

转载 作者:行者123 更新时间:2023-11-28 19:05:48 26 4
gpt4 key购买 nike

我在一个项目中看到了一种新的 alloc&init NSMutableArray 方式。就像这样ANSMutableArray *array = [@[] mutableCopy]; 这很好用,我想试试是否可以使用 BNSMutableArray *array = [NSMutableArray mutableCopy]; 构建成功,但使用时出现此错误:+[NSMutableArray addObject:]: unrecognized selector sent to class 0x38bedc2c

现在我想知道 A 是如何工作的?为什么B错了? A 比普通的 alloc&init 好吗?任何帮助将不胜感激。

最佳答案

mutableCopy是在 NSObject 类中声明的实例方法。它会在任何实例上调用以创建它的可变副本。

在第一种情况下,@[] 将创建一个自动释放的 NSArray 实例,在该实例上调用 mutableCopy 将创建 NSMutableArray实例。

在第二种情况下,在类上调用 mutableCopy 是不正确的,因为它不应该以这种方式调用。这将被编译但会在运行时导致异常。希望对您有所帮助!

关于ios - 这个 NSMutableArray alloc&init 是如何工作的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20561834/

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