gpt4 book ai didi

ios - NSSet 计数后没用?

转载 作者:行者123 更新时间:2023-11-28 20:45:36 25 4
gpt4 key购买 nike

为什么我做不到

NSLog(@"mySet count: %@", [mySet count]);

然后使用 NSSet? (如果我确实使用它,应用程序会因“EXC_BAD_ACCESS”而崩溃

我已经尝试过可变/不可变、保留、复制、自动释放...所有类型的集合,在计数消息之后它们都变得无用并崩溃。如果我不算它们的行为符合预期,如果我这样打印它们:

NSLog(@"mySet: %@", mySet);

没关系!问题似乎只在于计数。

有人能给我解释一下吗?我已经搜索过,但没有发现任何关于这种奇怪行为的信息

最佳答案

崩溃的原因是 [mySet count] 返回一个整数,而 %@ 格式说明符需要一个对象。将其更改为:

NSLog(@"mySet count: %lu", [mySet count]);

这是 Objective C 的“陷阱”之一(除非您已经熟悉 C 或 C++):有时您的数据是一个对象,有时您的数据不是一个对象。这是与 C 代码兼容所必需的。

关于ios - NSSet 计数后没用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6558933/

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