c++ - 将 C++ 类重新格式化为其他文件
问题描述
我一直在研究 C++ 中一个相当基本的日志记录类。我现在需要将类移到我的主文件之外,但我不知道在头文件中放入什么。我的大部分困惑在于我的日志记录级别的枚举。这是我的代码:
#include <iostream>
class Log {
public:
enum Level {
LevelError, LevelWarning, LevelInfo
};
private:
Level LogLevel = LevelInfo;
public:
void set_level(Level level) {
LogLevel = level;
}
void Error(const char* message) {
if (LogLevel >= LevelError) {
std::cout << "[ERROR]: " << message << std::endl;
}
}
void Warn(const char* message) {
if (LogLevel >= LevelWarning) {
std::cout << "[WARNING]: " << message << std::endl;
}
}
void Info(const char* message) {
if (LogLevel >= LevelInfo) {
std::cout << "[INFO]: " << message << std::endl;
}
}
};
PS 对我如何改进这门糟糕的课程的反馈深表感谢。
解决方案
这实际上看起来很好,就像你拥有它一样。您可以将整个内容按原样放入一个Log.h
文件中,或者将其拆分为Log.h/Log.cpp
.h 包含类定义,而 .cpp 文件包含四个类方法。
推荐阅读
- c# - 如何将 CommandBar 的 More Button 的可见性与 Secondary Commands 中的项目绑定?
- json - 如何将日期字符串从 JSON 解码为 Date 对象?
- python - While-loop/在数据框中查找序列
- javascript - Highcharts - 两个不同的值重叠
- android - Android BLE 从不接收来自特征的通知
- java - 在 Spring Boot 微服务中调度休息调用不起作用
- android - 我可以在 DatabaseReferences 中使用 Firebase 用户身份验证吗?
- salesforce - 将 Salesforce 与 AutoDesk Inventor 集成
- r - RSelenium 文本提取不能循环工作
- big-o - O(f(n)) + Ω(g(n)) 是否等于 Ω(f(n)) + O(g(n))?