• 文章
  • 簡單的控制檯日誌記錄器
2013年2月12日 (最後更新:2013年2月13日)

簡單的控制檯日誌記錄器

評分:3.8/5 (40票)
*****
作為開發HGL(在此處檢視 http://www.cplusplus.com/forum/lounge/91447/)的附帶產品,我開發了一個簡單但可擴充套件的控制檯日誌記錄器。

易於使用
1
2
3
4
#include "basiclogger.h"

logError("couldn't compress output");
logDebug("Details: " << e.what());

它支援以下型別的日誌記錄
  • std::wstring
  • std::string
  • std::exception
  • std::type_info
  • const std::string *- 安全防空指標
  • bool- 文字支援,即輸出為 true/false
  • float
  • int
  • size_t
關於一個註釋std::type_info:如果HAVE_GCC_ABI_DEMANGLE已定義並且由編譯器支援,則型別名稱將被“拆解”。

透過繼承,該日誌記錄器是可擴充套件的。因此,可以輕鬆引入新的支援型別。我將其分為BasicLogger,這是通用使用的,併為其進行了子類化以支援HGL特定的日誌記錄。

附件是所有必需的原始檔。

附件:[basiclogger.cpp] [basiclogger.h] [linkercontrol.h]