我遇到内存泄漏问题和Valgrind的输出:
freelocale()
如果我查看第一行,我会假设在没有{{1}}的情况下使用{{1}}。但是我一次又一次地检查了代码,事实并非如此。
我是否误解了输出,泄漏可能在其他地方?
答案 0 :(得分:1)
从追溯来看,newlocale
和freelocale
的配对并不是显而易见的。还有许多构造函数(TLocale
,TDateTime
,TVariant
和TField
)也可能必须被销毁(如果freelocale
从析构函数中调用)。您应该检查这些类是否也没有内存泄漏(例如,如果您有new TLocale
没有delete
,则会检测到另一个内存泄漏。
如果没有看到足够的源代码,很难说清楚。