Sean's Note: [DEBUG] _RPT & _RPTF

2011年11月23日 星期三

[DEBUG] _RPT & _RPTF


Visual C++ 提供了 _RPT 和 _RPTF 巨集來幫助使用者除錯,

其功能類似於 printf,但僅在 Debug 設定下會印出字串,

Release 設定下則會自動刪除。其可印出呼叫該巨集的程式檔案名稱與行數。

例如 :

_CrtSetReportMode(_CRT_WARN, _CRTDBG_MODE_FILE);

_CrtSetReportFile(_CRT_WARN, _CRTDBG_FILE_STDOUT);

_RPT0(_CRT_WARN, "Test.\n");

// Output
Test

_RPT1(_CRT_WARN, "Test %d.\n", 1);

// Output
Test 1

_RPTF0(_CRT_WARN, "Test.\n");

// Output
d:\win32\assert\assert\assert.cpp(54) : Test

_RPTF1(_CRT_WARN, "Test %d.\n", 1);

// Output
d:\win32\assert\assert\assert.cpp(54) : Test 1


有無 F 差在要不要印出檔案名稱與行數,而數字代表要代入的參數個數,最多到 4 。


沒有留言:

張貼留言