0

我正在使用我在这篇文章中找到的代码将 OpenAL 集成到我的 iPhone 游戏中,但是编译器在这行代码中给了我一个错误:
unsigned char *outData = malloc(fileSize);

所以我把它改成这样:
unsigned char *outData = (unsigned char*) malloc(fileSize);

这摆脱了编译器错误,但似乎引发了两个泄漏:
Malloc 32 Bytes 0x505cb40 AudioToolbox SimAggregateDevice::CreateAggregateDevice(__CFString const*, __CFString const*, unsigned long&)


NSCFDictionary 0x505be30 64 AudioToolbox SimAggregateDevice::CreateAggregateDevice(__CFString const*, __CFString const*, unsigned long&)

这是因为我更改了 unsigned char 行吗?如果有人可以帮助我消除这些泄漏,我将不胜感激。

4

1 回答 1

0

我假设您使用的是 .mm 文件而不是 .m (这是我认为编译器在没有强制转换的情况下会产生错误的唯一原因)。您所做的更改不会对内存管理产生影响,当然也不会导致泄漏。您是否在使用后释放这些数据?

于 2010-03-27T10:22:07.500 回答