Визуальный детектор утечек не обнаруживает утечек VS2013

Кажется, я не могу заставить VLD ловить любые утечки памяти, что бы я ни пытался. Есть идеи почему?

Вот фрагмент вывода тоже:

Visual Leak Detector Version 2.4RC2 installed. 
The thread 0x5748 has exited with code 0 (0x0).
The thread 0x2c70 has exited with code 0 (0x0).
The thread 0x3c98 has exited with code 0 (0x0).
No memory leaks detected.
Visual Leak Detector is now exiting.
The program '[24988] ConsoleApplication2.exe' has exited with code 0 (0x0).


#include <vld.h>

#include <iostream>
using namespace std;

class Car{
    public:
        Car() {}

        Car(string model,int year, string color) {
            this->model = model; this->color, this->year = year;
        }

        string getModel() {
            return this->model;
        }

        void setModel(string m) {
            this->model = model;
        }

        string getColor() {
            return this->color;
        }

        void setColor(string color) {
            this->color = color;
        }

        void paint()
        {
            setColor("white");
        }

    private:
        string model;
        int year;
        string color;
};


int _tmain(int argc, _TCHAR* argv[]){
    Car c("bmw", 2000, "red");
    c.paint();
    cout << c.getColor().c_str();

    for (int i = 0; i < 10; i++)
        int *ptr = new int(10);

    Car *c2 = new Car("benz", 2010, "yellow");

    return 0;
 }

Что мне не хватает?

1 ответ

Решение

Работает под Visual Studio 2013 Ultimate

Вы должны выполнить программу в режиме консоли (перейдите в каталог отладки проекта)

Ниже вы найдете изображение результата, но консоль показала много утечек, мы не можем увидеть их все здесь

Я добавил пути include и lib в настройки проекта

  1. C:\Program Files (x86)\ Визуальный детектор утечек \ include
  2. C:\Program Files (x86)\ Визуальный детектор утечек \ lib \ win32
  3. C:\Program Files (x86)\ Визуальный детектор утечек \lib\win64

Как видите, 13 утечек памяти.

Другие вопросы по тегам