#include <iostream>
class Log
{
public:
enum LogLevel : const int
{
LogLevelError = 0, LogLevelWarning, LogLevelInfo
};
private:
LogLevel m_LogLevel = LogLevelInfo;
public:
void SetLevel(LogLevel level)
{
m_LogLevel = level;
}
void Error(const char* message)
{
if (m_LogLevel >= LogLevelError)
{
std::cout << "[ERROR]:" << message << std::endl;
}
}
void Warn(const char* message)
{
if (m_LogLevel >= LogLevelWarning)
{
std::cout << "[WARNING]:" << message << std::endl;
}
}
void Info(const char* message)
{
if (m_LogLevel >= LogLevelInfo)
{
std::cout << "[INFO]:" << message << std::endl;
}
}
};
int main(void)
{
Log log;
log.SetLevel(Log::LogLevelError);
log.Warn("Warning");
log.Error("Error");
log.Info("Info");
std::cin.get();
}
【Cherno的C++视频】How to write a C++ class
最新推荐文章于 2024-09-16 17:46:36 发布