Давайте посмотрим на это маленькое приложение:
#include <QString>
#include <QDebug>
int main(int argc, char *argv[]) {
const auto test_string =
QString{"Some string \n \x01 \u0002 with some \r special chars"};
qDebug() << test_string;
qDebug(qPrintable(test_string));
}
Это дает следующий вывод:
"Some string \n \u0001 \u0002 with some \r special chars"
Some string
special chars
Press <RETURN> to close this window...
Это демонстрирует, как оператор qDebug << имеет некоторую функциональность, которая преобразуетвсе специальные символы QString в некоторую читаемую строку, которую можно легко поместить в строковое объявление в C ++. </p>
Я хотел бы использовать эту функциональность для подачи строк в пользовательскую структуру ведения журналов.Есть ли возможность использовать одну и ту же функцию преобразования напрямую?
Фактически это будет означать преобразование test_string в экземпляр QString, который дает одинаковый вывод для обоих приведенных выше операторов qDebug.