LogMetaData Class
class Visindigo::General::LogMetaData日志元数据类,用于存储日志消息的附加信息。. 详情...
| 头文件: | #include <General/LogMetaData.h> |
| 自以下版本: | Visindigo 0.13.0 |
- 所有成员列表(包含继承成员)
- LogMetaData 是该集合的一部分:VDebug日志系统子模块.
公开成员函数
(自 Visindigo 0.13.0 引入) | LogMetaData() |
(自 Visindigo 0.13.0 引入) | LogMetaData(const QString &funcName, qint32 lineNumber) |
(自 Visindigo 0.13.0 引入) | LogMetaData(const Visindigo::General::LogMetaData &other) |
(自 Visindigo 0.13.0 引入) | LogMetaData(Visindigo::General::LogMetaData &&other) |
(自 Visindigo 0.13.0 引入) | ~LogMetaData() |
(自 Visindigo 0.13.0 引入) QString | getFunctionName() const |
(自 Visindigo 0.13.0 引入) qint32 | getLineNumber() const |
(自 Visindigo 0.13.0 引入) bool | isValid() const |
(自 Visindigo 0.13.0 引入) void | setFunctionName(const QString &funcName) |
(自 Visindigo 0.13.0 引入) void | setLineNumber(qint32 lineNumber) |
(自 Visindigo 0.13.0 引入) QString | toString() const |
(自 Visindigo 0.13.0 引入) Visindigo::General::LogMetaData & | operator=(Visindigo::General::LogMetaData &&other) |
(自 Visindigo 0.13.0 引入) Visindigo::General::LogMetaData & | operator=(const Visindigo::General::LogMetaData &other) |
详细说明
LogMetaData 类用于存储与日志消息相关的附加信息,例如函数名称和行号。 这些信息可以帮助开发者更好地定位日志消息的来源,从而更有效地进行调试和问题排查。
因为这个类输入数据所依赖的__FUNCTION__宏和__LINE__宏在绝大多数 现代编译器下都可用,因此该类的信息几乎总是有效的,但不同编译器在__FUNCTION__宏 的实现细节上有所差异,例如MSVC下返回的是完整的函数名,而GCC和Clang下 则只有函数名本身,不带有命名空间和类名等信息。
如果需要完整函数签名,要考虑Q_FUNC_INFO宏。
如果需要更详细的堆栈跟踪信息,请使用Visindigo::General::StacktraceHelper类。
在VDebug中,这两个类一般同时使用,即使部分信息是重复的。
与Visindigo::General::StacktraceFrame类不同,LogMetaData类是可变的,因此可以在创建后修改其内容。
成员函数文档
[since Visindigo 0.13.0] LogMetaData::LogMetaData()
默认构造函数,创建一个空的日志元数据对象。
这个 function 从 Visindigo 0.13.0 开始支持。
[since Visindigo 0.13.0] LogMetaData::LogMetaData(const QString &funcName, qint32 lineNumber)
构造函数,使用指定的函数名称和行号创建一个日志元数据对象。
funcName 函数名称。 lineNumber 行号。
这个 function 从 Visindigo 0.13.0 开始支持。
[since Visindigo 0.13.0] LogMetaData::LogMetaData(const Visindigo::General::LogMetaData &other)
拷贝构造函数
这个 function 从 Visindigo 0.13.0 开始支持。
[noexcept, since Visindigo 0.13.0] LogMetaData::LogMetaData(Visindigo::General::LogMetaData &&other)
移动构造函数
这个 function 从 Visindigo 0.13.0 开始支持。
[noexcept, since Visindigo 0.13.0] LogMetaData::~LogMetaData()
析构函数,销毁日志元数据对象。
这个 function 从 Visindigo 0.13.0 开始支持。
[since Visindigo 0.13.0] QString LogMetaData::getFunctionName() const
return 函数名称
这个 function 从 Visindigo 0.13.0 开始支持。
[since Visindigo 0.13.0] qint32 LogMetaData::getLineNumber() const
return 行号
这个 function 从 Visindigo 0.13.0 开始支持。
[since Visindigo 0.13.0] bool LogMetaData::isValid() const
return 日志元数据是否有效
此类将函数名称为空且行号为-1的对象视为无效对象。 如果需要表达“函数有效,但行号未知”,请将行号设置为0。
这在某些情况下很有用。
这个 function 从 Visindigo 0.13.0 开始支持。
[since Visindigo 0.13.0] void LogMetaData::setFunctionName(const QString &funcName)
funcName 函数名称 设置函数名称
这个 function 从 Visindigo 0.13.0 开始支持。
[since Visindigo 0.13.0] void LogMetaData::setLineNumber(qint32 lineNumber)
lineNumber 行号 设置行号
这个 function 从 Visindigo 0.13.0 开始支持。
[since Visindigo 0.13.0] QString LogMetaData::toString() const
return 将日志元数据格式化为字符串表示形式。
这是个用于调试的辅助函数,Visindigo输出日志时不依赖此函数,因此调用此函数 输出的结果和在日志上看到的结果有所不同。
这个 function 从 Visindigo 0.13.0 开始支持。
[noexcept, since Visindigo 0.13.0] Visindigo::General::LogMetaData &LogMetaData::operator=(Visindigo::General::LogMetaData &&other)
移动赋值运算符
这个 function 从 Visindigo 0.13.0 开始支持。
[since Visindigo 0.13.0] Visindigo::General::LogMetaData &LogMetaData::operator=(const Visindigo::General::LogMetaData &other)
拷贝赋值运算符
这个 function 从 Visindigo 0.13.0 开始支持。