読者です 読者をやめる 読者になる 読者になる

しーくさんのUp & Down - Thinking Notes

更新頻度はあまり高くないです。プログラミングやLinuxなどのことについてや、果てはゲーム記事まで。

SafeDeleteマクロ類のテンプレート関数版

C++
template <typename Type>
inline void SafeDelete(Type*& p){
	if(p != NULL) {
		delete p;
		p = NULL;
	}
}

template <typename T>
inline void SafeDeleteArray(Type*& p){
	if(p != NULL) {
		delete[] p;
		p = NULL;
	}
}

これでいいらしい。

SafeRelease系なら、
delete文のところを消し、代わりに(p)->Release()にすればいいかな?
ついでにtemplate class Typeじゃないとダメかね?(そこら辺わかってない)
inlineつけてるのは気休め程度か

「*&」は、Type型ポインタ変数の参照って解釈でいいのか。普段自分が使わない組み合わせだからごちゃごちゃしてくる。