QT中の検出メモリの漏洩

3505 ワード

QT中の検出メモリが漏れています.WINDOWSの下で検出します.
ツール:vld-233-setup.exe http://vld.codeplex.com/downloads/get/670164
pro中のコードは以下の通りです.
#-------------------------------------------------
#
# Project created by QtCreator 2015-11-30T15:19:54
#
#-------------------------------------------------

QT       += core gui

greaterThan(QT_MAJOR_VERSION, 4): QT += widgets

TARGET = tabdialog
TEMPLATE = app


SOURCES += main.cpp\
#        mainwindow.cpp\
tabdialog.cpp

#HEADERS  += mainwindow.h
HEADERS  += tabdialog.h

#FORMS    += mainwindow.ui

#QT += widgets

#HEADERS       = tabdialog.h \
#    tabdialog.h
#SOURCES       = main.cpp \
#                tabdialog.cpp \
#    tabdialog.cpp

## install
#target.path = $$[QT_INSTALL_EXAMPLES]/widgets/dialogs/tabdialog
#INSTALLS += target

#wince50standard-x86-msvc2005: LIBS += libcmt.lib corelibc.lib ole32.lib oleaut32.lib uuid.lib commctrl.lib coredll.lib winsock.lib ws2.lib


win32
{
}
DEFINES += _DEBUG
        VLD_PATH = C:/Program Files (x86)/Visual Leak Detector
        INCLUDEPATH += $VLD_PATH/include
        #LIBS += -L $$VLD_PATH/lib/Win32 -lvld
        #LIBS += -L $$VLD_PATH/lib/Win32
#LIBS +=  -L C:/Program Files (x86)/Visual Leak Detector/lib/Win32/vld
#LIBS += -Lvld
LIBS += -LC:/Program Files (x86)/Visual Leak Detector/lib/Win32/-lvld
#LIBS+=  -lvld #
        #LIBS += -L $VLD_PATH/lib/Win32/vld.lib

#win32 {
#    CONFIG(debug, debug|release)
#    {
##        DEFINES += _DEBUG
#        # vld 2.2 downloaded from http://vld.codeplex.com/  C:\Program Files (x86)\Visual Leak Detector\include
#        VLD_PATH = C:/Program Files (x86)/Visual Leak Detector
#        INCLUDEPATH += $VLD_PATH/include
#        LIBS += -L$VLD_PATH/lib/Win32 -lvld
#    }
#}
main.cppに次のように書きます.
<pre style="margin-top: 0px; margin-bottom: 0px;"><span style=" color:#409090;">#ifdef</span><span style=" color:#646482;"> </span><span style=" color:#409090;">_DEBUG</span>
#ifdef _DEBUG
#include "vld.h"
#endif
 
 
int *pint =NULL;
    pint=new int[30];

    int *pint1 =NULL;
    pint1=new int[30];
の効果は図の通りです.
QT中的检测内存泄露_第1张图片には、環境変数に以下のようなものが追加される.
Path:C:\Program Files(x 86)\Visual Leak Detector\bin;
もし.PROに次の図があれば、

開けられませんでした.PROのLIBの経路を確認します.二つ目はこのLIBをDEBUGに入れるかどうかを確認します.次の図のように.
備考:PROの書き方については、参照 http://blog.chinaunix.net/uid-23592843-id-2495471.html