#ifndef PART_H
#define PART_H
#include "part.h"
#endif
#define _CRTDBG_MAP_ALLOC
#include <stdlib.h>
#include <crtdbg.h>
int main(){
_CrtSetDbgFlag(_CRTDBG_ALLOC_MEM_DF | _CRTDBG_LEAK_CHECK_DF);
part part_A;
part* part_B_point;
part_B_point = new part;
delete part_B_point;//ここ//
return 0;
}
文字列を表示するようにpart.hで実装しています。
deleteの行をコメントアウトした場合には、呼ばれるデストラクタが、
呼ばれたコンストラクタより少ないので、メモリの解放ができていないと思うのですが、
出力ログにはコメントアウトの前後で変化は見られません。
そこで聞きたいのですが、メモリリークのエラーが見られないのは、
1.他の部分にエラーが表示される。
2.コードが正しくない。
この二つのうちどちらか、もしくは両方だと思いますが、1ではないようですし、
2であれば、どこが間違っているのか見当がつきません。
そもそも注目する点が違うかもしれませんが、誤りを指摘していただけないでしょうか。