我正在使用 Parallel Studio(来自英特尔)和英特尔 c++ 编译器。
内存问题分析器总是告诉我,我的CreateWindow
函数中有内核资源泄漏。
函数调用位于我的头文件的第 26 行。
无论我做什么,泄漏总是出现(调用DestroyWindow
类的析构函数等)
我正在使用 Parallel Studio(来自英特尔)和英特尔 c++ 编译器。
内存问题分析器总是告诉我,我的CreateWindow
函数中有内核资源泄漏。
函数调用位于我的头文件的第 26 行。
无论我做什么,泄漏总是出现(调用DestroyWindow
类的析构函数等)
您链接的代码中的类没有析构函数。
无论如何,它可能是 CreateWindow 所做的事情,看起来像内存泄漏,但不是。
PS 不要在 CWindow 的每个实例化上注册 WNDCLASS。在程序启动时注册一次。您可以在 CWindow 中创建一个私有的 WindowClass 单例类来处理窗口类注册:
class CWindow
{
private:
class CWindowClass
{
private:
static CWindowClass m_windowClass;
CWindowClass()
{
// Register a WNDCLASS
}
~CWindowClass() {}
}
...
};