C++相談室 part82
■ このスレッドは過去ログ倉庫に格納されています
0665デフォルトの名無しさん
2010/07/15(木) 17:15:40Windowsアプリケーションのソースですが
class TextClass : public exception
{
public:
void Release(); // リソースの開放
private:
LPTSTR message;
void SetMessage(LPCTSTR message);
};
void TextClass::SetMessage(LPCTSTR message)
{
// クラス変数にコピー
this->message = (LPTSTR)HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, (lstrlen(message) + 1) * sizeof(TCHAR));
lstrcpy(this->message, message);
}
外部からSetMessage()を2回呼ばれると
1回目に確保したメモリがリークしませんか?
「すでにメモリ割り当てを行っていたら開放してから再割当て」
という処理を書く必要があると思うのですが
それを調べる方法はあるのでしょうか?
制御用の変数を新たに作って制御する必要がありますでしょうか?
■ このスレッドは過去ログ倉庫に格納されています