ÅÛÇø´À¸·Î RELEASE, DELETE ±¸Çö
#define ¼±¾ð¹®À¸·Î ±¸ÇöµÇ¾î ÀÖ´Â __RELEASE__, __DELETE__¹®À»
ÅÛÇø´À¸·Î ¼öÁ¤Çغ¸ÀÚ. ÅÛÇø´ÀÇ ÀÚ¼¼ÇÑ ¼³¸íÀº ½ÃÁß¿¡ ÁÁÀº C++
Ã¥ÀÌ ¸¹À¸´Ï °¢ÀÚ µÚÁ®º¸¸é ÁÁ¸éÁÁ°Ú´Ù.
ÅÛÇø´À¸·Î ±¸ÇöµÈ ¸®¼Ò½º ÇØÁ¦ ¹æ¹ýÀ» #define°ú ºñ±³Çϴµ¥¼ ¼³¸íÀ»
¸¶¹«¸® ¢°Ú´Ù.
<<_RELEASE_ ¼±¾ð>>
#define _RELEASE_(p) { if(p) { (p)->Release();
(p)=NULL; };}
|
template<class T> void
_RELEASE_(T t) { if(
t ) { t->Release(); t
= 0; } }
|
<<_DELETE_ ¼±¾ð>>
#define _DELETE_(p) { if(p) { delete (p); (p)=NULL;
};}
|
template<class T> void
_DELETE_(T t) { if(
t ) { delete
t; t
= 0; } }
|
<<»ç¿ë ¹æ¹ý¿¡ ´ëÇؼ ¾Ë¾Æº¸ÀÚ>>
´ÙÀ½°ú °°ÀÌ º¯¼ö°¡ ¼±¾ðµÇ¾î ÀÖ´Ù°í ÇÒ ¶§ ¾î¶»°Ô »ç¿ëÇÏ´ÂÁö ºñ±³ÇØ
º¸ÀÚ.
LPDIRECT3D9 g_d3d
= NULL; //
our main d3d8 interface LPDIRECT3DDEVICE9 g_d3d_Device
= NULL; // our d3d8 device LPDIRECT3DVERTEXBUFFER9
g_VertexBuffer = NULL; // our VertexBuffer
|
ÇØÁ¦½Ã¿¡´Â ´ÙÀ½°ú °°ÀÌ »ç¿ëµÈ´Ù.
_RELEASE_ (g_VertexBuffer); _RELEASE_ (g_d3d_Device); _RELEASE_
(g_d3d);
|
_RELEASE_<LPDIRECT3DVERTEXBUFFER9>(g_VertexBuffer); _RELEASE_<LPDIRECT3DDEVICE9>(g_d3d_Device); _RELEASE_<LPDIRECT3D9>(g_d3d);
|
[Æß]
http://www.moon-labs.com
|