How to convert Q_ENUM to QString for QT > 5.11 most efficient way?

前端 未结 2 842
借酒劲吻你
借酒劲吻你 2021-01-27 01:55

I read several advices how to get an actual QString from a Q_ENUM value.

Below are 3 possible ways, I came up with, that are compilable constru

2条回答
  •  死守一世寂寞
    2021-01-27 02:15

    QDebug should be used for logging and debugging. QDebug constructs a QTextStream and is quite expensive for what you're trying to do.

    Using QMetaEnum is proper. You shouldn't be doing string concatenation the way you do, use tr for user visible strings, or QStringLiteral instead of tr elsewhere:

    const auto errStr = QMetaEnum::fromType().valueToKey(error);
    ui->statusBar->showMessage(tr("Error occured: %1").arg(errStr));
    

提交回复
热议问题