如何获取其中的函数名称

问题描述 投票:0回答:2

我试图在出现错误时记录日志,所以我想像这样编写类信息和函数名称:

void MainWindowTest::testMethod()
{
    qDebug()<<QString("ClassName is:%0,Function Name is:%1")
              .arg(this->metaObject()->className()).arg("how to get method name");
}

我该怎么做?

qt logging qmetaobject
2个回答
39
投票

您可以使用

Q_FUNC_INFO

示例代码:

qDebug() << "Function Name: " << Q_FUNC_INFO;

请参阅 Qt 文档 — - 全局 Qt 声明 —

const char*Q_FUNC_INFO


0
投票

QT_STRINGIFY(arg)

该宏可用于将内置行扩展器 arg 转换为字符串文字。

MainWindowVM::MainWindowVM(QObject* parent) : QObject(parent)
{
    QDebug() << QT_STRINGIFY(MainWindowVM);
}
© www.soinside.com 2019 - 2024. All rights reserved.