为什么在 Xcode 调试器和仪器中一些内存只是“malloc(48 字节)”

问题描述 投票:0回答:1

同时,其他对象也具有完全限定的 ObjectiveC 类名、Swift 类名等。

为什么有些分配写为“malloc(48 bytes)”,而另一些则不是?这与正在运行的 C 原始代码和 C++ 关闭有什么关系吗?它不提供有关特定类型对象的高级数据?实际上,如何提供有关分配对象的特定类型的信息?

swift xcode debugging dynamic-memory-allocation
1个回答
0
投票

这可能是因为它们是使用低级函数(如 malloc)(在 C 或 C++ 中)进行分配的。在 Xcode 中,一些分配被标记为

malloc(48 bytes)
,因为它们没有必要的元数据在调试器中被识别为特定类型。这些函数中没有提供类型信息。那些用 Obj-C 或 Swift 制作的可以,因为调试器是为它们构建的。

© www.soinside.com 2019 - 2024. All rights reserved.