c++下loge日志分級(jí)怎么實(shí)現(xiàn)

c++
小樊
81
2024-09-25 04:26:12
欄目: 編程語言

在 C++ 中,您可以使用條件語句和宏定義來實(shí)現(xiàn) loge 日志分級(jí)。以下是一個(gè)簡(jiǎn)單的示例:

  1. 首先,定義日志級(jí)別的枚舉類型:
enum class LogLevel {
    INFO,
    WARNING,
    ERROR,
    LOGE
};
  1. 接下來,創(chuàng)建一個(gè)用于輸出日志的函數(shù)模板:
#include <iostream>
#include <string>

template<typename T>
void log(LogLevel level, const T& message) {
    if (level >= LOGE) {
        std::cout << "LOGE: " << message << std::endl;
    }
}
  1. 然后,使用宏定義簡(jiǎn)化日志輸出:
#define INFO(msg) log(LogLevel::INFO, msg)
#define WARNING(msg) log(LogLevel::WARNING, msg)
#define ERROR(msg) log(LogLevel::ERROR, msg)
#define LOGE(msg) log(LogLevel::LOGE, msg)
  1. 最后,在您的代碼中使用這些宏定義:
int main() {
    INFO("This is an info message.");
    WARNING("This is a warning message.");
    ERROR("This is an error message.");
    LOGE("This is a loge message.");

    return 0;
}

這個(gè)示例中,log 函數(shù)模板根據(jù)日志級(jí)別決定是否輸出信息。通過使用宏定義,您可以方便地為不同級(jí)別的日志添加前綴。

0