¸¶ÀÌÅ©·Î¼ÒÇÁÆ® ÆÄ¿îµ¥ÀÌ¼Ç Å¬·¡½º ¶óÀ̺귯¸®´Â ½±°Ô ÇÁ·Î±×·¥À» µð¹ö±ë ÇÏ´Â ¿©·¯ Áø´Ü ¼ºñ½º¸¦ Á¦°ø ÇÕ´Ï´Ù. ÀÌ·¯ÇÑ Áø´Ü ¼ºñ½º ¸ÅÅ©·Î ¹× ÃßÀû ÇÁ·Î±×·¥ÀÇ ¸Þ¸ð¸® ÇÒ´çÀ» ·±Å¸ÀÓ¿¡ °³Ã¼ÀÇ ³»¿ëÀ» ´ýÇÁ ÇÏ °í ·±Å¸ÀÓ¿¡ µð¹ö±ë ¸Þ½ÃÁö¸¦ ÀμâÇÒ ¼ö ÀÖ´Â Àü¿ª ÇÔ¼ö¸¦ Æ÷ÇÔ ÇÕ´Ï´Ù. ¸ÅÅ©·Î ¹× Áø´Ü ¼ºñ½º¿¡ ´ë ÇÑ Àü¿ª ÇÔ¼ö´Â ´ÙÀ½ ¹üÁÖ·Î ±×·ìÈ µË´Ï´Ù.:
ÀÌ·¯ÇÑ ¸ÅÅ©·Î ÇÔ¼ö¿Í MFCÀÇ µð¹ö±× ¹× ¸±¸®½º ¹öÀü¿¡ CObject ¿¡¼ ÆÄ»ý µÈ ¸ðµç Ŭ·¡½º¿¡ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ±×·¯³ª DEBUG_NEW ¹× È®ÀÎ À» Á¦¿ÜÇÑ ¸ðµç ¸±¸®½º ¹öÀü¿¡¼ ¾Æ¹«°Íµµ ÇÏÁö ¾Ê°í¡£
µð¹ö±× ¶óÀ̺귯¸®¿¡¼ ¸ðµç ÇÒ´ç µÈ ¸Þ¸ð¸® ºí·Ï "°¡µå ¹ÙÀÌÆ®." ½Ã¸®Áî¿Í »çÀÌ ÀÌ·¯ÇÑ ¹ÙÀÌÆ®´Â À߸ø µÈ ¸Þ¸ð¸® ¾²±â¿¡ ÀÇÇØ ¹æÇØ, Áø´Ü ·çƾ ¹®Á¦¸¦ º¸°íÇÒ ¼ö ÀÖ½À´Ï´Ù. ÁÙÀ» Æ÷ÇÔ ÇÏ´Â °æ¿ì
# define »õ DEBUG_NEW
±¸Çö ÆÄÀÏ¿¡ ¸ðµç È£ÃâÀ» »õ ÆÄÀÏ À̸§ ¹× ÁÙ ¹øÈ£¸¦ ¸Þ¸ð¸® ÇÒ´ç Àå¼Ò¸¦ Çß´Ù ÀúÀå ÇÕ´Ï´Ù. CMemoryState::DumpAllObjectsSince ÇÔ¼ö´Â ¸Þ¸ð¸® ´©¼ö¸¦ ½Äº°ÇÒ ¼ö ÀÖµµ·ÏÀÌ ¿©ºÐÀÇ Á¤º¸¸¦ Ç¥½Ã µË´Ï´Ù. Áø´Ü Ãâ·Â¿¡ ´ë ÇÑ ÀÚ¼¼ÇÑ ³»¿ëÀº CDumpContext Ŭ·¡½º¸¦ ¶ÇÇѸ¦ ÂüÁ¶ ÇϽʽÿÀ.
¶ÇÇÑ, C ·±Å¸ÀÓ ¶óÀ̺귯¸®´Â ¶ÇÇÑ ÀÏ·ÃÀÇ Áø´Ü ±â´ÉÀ» ÀÀ¿ë ÇÁ·Î±×·¥À» µð¹ö±ë ÇÏ´Â µ¥ »ç¿ëÇÒ ¼ö¸¦ Áö¿ø ÇÕ´Ï´Ù. ÀÚ¼¼ÇÑ ³»¿ëÀº ÂüÁ¶ µð¹ö±ë ·çƾ ½ÇÇà-ŸÀÓ ¶óÀ̺귯¸® ÂüÁ¶¡£
| ÁÖÀå | ¸Þ½ÃÁö¸¦ Àμâ ÇÏ °í ÁöÁ¤ µÈ ½ÄÀÌ FALSE ·Î ¶óÀ̺귯¸®ÀÇ µð¹ö±× ¹öÀü¿¡¼ °è»ê ÇÏ´Â °æ¿ì ÇÁ·Î±×·¥À» Áß´Ü¡£ |
| ASSERT_KINDOF | °³Ã¼ ¶Ç´Â ÁöÁ¤µÈ µÈ Ŭ·¡½º¿¡¼ ÆÄ»ý µÈ Ŭ·¡½ºÀÇ ÁöÁ¤µÈ µÈ Ŭ·¡½ºÀÇ °³Ã¼´Â Å×½ºÆ®¡£ |
| ASSERT_VALID | AssertValid ¸â¹ö ÇÔ¼ö;¸¦ È£Ãâ ÇÏ ¿© °³Ã¼ÀÇ ³»ºÎ À¯È¿¼º Å×½ºÆ® CObject ¿¡¼ ÀϹÝÀûÀ¸·Î ÀçÁ¤ÀÇ¡£ |
| DEBUG_NEW | ¸Þ¸ð¸® ´©¼ö¸¦ ãÀ» ¼ö ÀÖµµ·Ï µð¹ö±× ¸ðµå¿¡¼ ¸ðµç °³Ã¼ ÇÒ´ç¿¡ ´ë ÇÑ ÆÄÀÏ À̸§ ¹× ÁÙ ¹øÈ£¡£ |
| ÃßÀû | Á¦°ø ÇÏ´Â printf-°°Àº ¶óÀ̺귯¸®ÀÇ µð¹ö±× ¹öÀü¿¡¼ ±â´É¡£ |
| TRACE0 | Àμö ¾øÀÌ °É¸³´Ï´Ù ÇÏÁö¸¸ ÃßÀû À¯»çÇÑ Çü½Ä ¹®ÀÚ¿¡£ |
| TRACE1 | ´ÜÀÏ Àμö °É¸³´Ï´Ù ÇÏÁö¸¸ ÃßÀû À¯»çÇÑ Çü½Ä ¹®ÀÚ¿¡£ |
| TRACE2 | ÃßÀû °É¸³´Ï´Ù ÇÏÁö¸¸ À¯»çÇÑ µÎ °³ÀÇ Àμö Çü½Ä ¹®ÀÚ¿¡£ |
| TRACE3 | ÃßÀû Çü½Ä ¹®ÀÚ¿ Àμö ¼¼ ¼Ò¿ä¿Í ºñ½ÁÇÏÁö¸¸¡£ |
| È®ÀÎ | ASSERT ¿Í À¯»ç ÇÏÁö¸¸ µð¹ö±× ¹öÀüÀ¸·Î »Ó¸¸ ¾Æ´Ï¶ó ¶óÀ̺귯¸®ÀÇ ¸±¸®½º ¹öÀü¿¡¼ ½ÄÀ» °è»êÇÕ´Ï´Ù¡£ |
| afxDump | µð¹ö°Å Ãâ·Â â ¶Ç´Â µð¹ö±× Å͹̳ΠCDumpContext Á¤º¸¸¦ º¸³»´Â Àü¿ª º¯¼ö¡£ |
| afxMemDF | µð¹ö±ë ¸Þ¸ð¸® ÇÒ´çÀÚÀÇ µ¿ÀÛÀ» Á¦¾î ÇÏ´Â Àü¿ª º¯¼ö¡£ |
| afxTraceEnabled | »ç¿ë Çϰųª »ç¿ë ÇÏÁö ¾ÊÀ¸·Á¸é TRACE ¸ÅÅ©·Î Ãâ·Â Àü¿ª º¯¼ö¡£ |
| afxTraceFlags | MFCÀÇ ±âº» Á¦°ø º¸°í ±â´ÉÀ» ¼³Á¤ ÇÏ´Â µ¥ »ç¿ë ÇÏ´Â Àü¿ª º¯¼ö¡£ |
| AfxCheckError | Å×½ºÆ®¸¦ Åë°ú ÇÏ´Â µ¥ »ç¿ë ÇÏ´Â Àü¿ª º¯¼ö ÀûÀý ÇÑ ¿À·ù¸¦ throw ÇÏ´Â SCODE ¿À·ù°¡ °æ¿ì ¹×ÀÌ °æ¿ì, ÂüÁ¶¸¦¡£ |
| AfxCheckMemory | ÇöÀç ÇÒ´ç µÈ ¸Þ¸ð¸®ÀÇ ¸ðµç ¹«°á¼º È®ÀΡ£ |
| AfxDump | µð¹ö°Å¿¡¼ È£Ãâ ÇÏ´Â °æ¿ì µð¹ö±ë ÇÏ´Â µ¿¾È °³Ã¼ÀÇ »óŸ¦ ´ýÇÁ¡£ |
| AfxDumpStack | ÇöÀç ½ºÅÃÀÇ À̹ÌÁö¸¦ »ý¼º ÇÕ´Ï´Ù. ÀÌ ÇÔ¼ö´Â Ç×»ó Á¤ÀûÀ¸·Î ¸µÅ©¡£ |
| AfxEnableMemoryTracking | ¸Þ¸ð¸® ÃßÀû ÄÑ°í ²ô±â ¼³Á¤¡£ |
| AfxIsMemoryBlock | ¸Þ¸ð¸® ºí·ÏÀÌ Á¦´ë·Î ÇÒ´ç È®ÀΡ£ |
| AfxIsValidAddress | ¸Þ¸ð¸® ÁÖ¼Ò ¹üÀ§´Â ÇÁ·Î±×·¥ÀÇ ¹üÀ§ ³»¿¡¼ È®ÀΡ£ |
| AfxIsValidString | ¹®ÀÚ¿¿¡ ´ë ÇÑ Æ÷ÀÎÅÍ ¿Ã¹Ù¸¥Áö ¿©ºÎ °áÁ¤¡£ |
| AfxSetAllocHook | °¢ ¸Þ¸ð¸® ÇÒ´ç, ÇÔ¼ö È£Ãâ ¼ö¡£ |
| AfxDoForAllClasses | ¸ðµç CObject¿¡ ´ëÇØ ÁöÁ¤µÈ µÈ ÇÔ¼ö¸¦ ¼öÇà-ÆÄ»ý Ŭ·¡½º¿¡¼ Áö ¿øÇÏ´Â ·±Å¸ÀÓ Çü½Ä °Ë»ç¡£ |
| AfxDoForAllObjects | ¸ðµç CObject¿¡ ´ëÇØ ÁöÁ¤µÈ µÈ ÇÔ¼ö¸¦ ¼öÇà- »õ ÇÒ´ç µÈ °³Ã¼¸¦ ÆÄ»ý¡£ |