2011-07-03 76 views
0

我寫在C.我想了一切分裂成不同的功能,使main()本質上只是調用一些功能的應用可重複使用的功能。現在,這將是很好,如果這些功能將是可重複使用,從而使其他應用程序(例如加載項)可以使用這些。但是,這些功能都記錄他們在做什麼,因爲主要的應用程序設計用於與用戶交互 - 該插件程序不neccessarily必須與用戶進行交互,因此不必做記錄。如何寫那些記錄

所以,希望用我的一些功能並不僅僅依賴於功能本身的程序,而且對日誌記錄功能。如果程序不想做任何日誌記錄,情況會更糟糕。我將如何解決這個問題?

+0

寫關於它的自述文件,讓人們重用你的代碼可以grep日誌函數調用了呢? – mingos

回答

0

你可以做這樣的:

#ifdef LOGGING 
//logging code 
#endif 
+0

你爲什麼認爲這是一條評論? –

0

你可以在每個函數的參數說你是否想讓它做記錄或不 - 有用的,如果你認爲其他程序可能需要執行日誌記錄某些功能但不是其他功能。或者有一個初始化功能,可以爲整個運行時間打開/關閉日誌記錄。或者,正如@yi_H所說,有一個編譯編譯指示來禁用日誌記錄。

如果這些功能是真正通用的,你也可能把它們放入一個靜態或動態鏈接庫了。然後,從結構的角度來看,使用「初始化」功能設置日誌記錄模式會更合理。

相關問題