撰寫程式, 不論是為了除錯, 或是了解程式運作的狀態, 需要在程式代碼中 加進一些 log.
一旦加入 log, 當然也需要一個開啟和關閉 log 的機制. 而且必須是一個方便使用的開關機制.
一般來說, 我們可能會使用 以下的方式在程式代碼中加入 log
#define MY_DEBUG
.......
#ifdef MY_DEBUG
printf("This is a log.\n");
#endif
.......
使用 MY_DEBUG 控制 log 機制的開啟和關閉.
這種做法的缺點是 加入 log 的同時也必須跟著加入 #ifdef 和 #endif. 撰寫上不方便 且程式代碼會看起來比較凌亂.