0

Parallel Studio (Intel 製) と Intel c++ Compiler を使用しています。

メモリ問題アナライザーは、関数にカーネル リソース リークがあることを常に通知しCreateWindowます。

関数呼び出しは、ヘッダー ファイルの 26 行目にあります。

私が何をしても、常にリークが発生します(DestroyWindowクラスのデストラクタを呼び出すなど)。

ヘッダー: http://beta.pastie.org/private/ze8x59f1nfkjz0wcrromew

ソース: http://beta.pastie.org/5425046

4

1 に答える 1

0

リンクしたコードのクラスにはデストラクタがありません。

とにかく、それはメモリ リークのように見えますがそうではない CreateWindow の動作である可能性があります。

PS は、CWindow のインスタンス化ごとに WNDCLASS を登録しません。プログラム起動時に一度登録してください。ウィンドウ クラスの登録を処理するプライベート WindowClass シングルトン クラスを CWindow 内に作成できます。

class CWindow
{
private:
    class CWindowClass
    {
    private:
        static CWindowClass m_windowClass;

        CWindowClass()
        {
            // Register a WNDCLASS
        }

        ~CWindowClass() {}
    }

    ...
};
于 2012-11-23T23:28:03.880 に答える