Я медленно переношу свой код с DEFINE (старый способ C) на constexpr (способ C++). В этом случае я хочу определить переменную класса QStringLiteral для использования в моем коде, но видимую только в файле .CPP, в котором она определена. Я думал, что делаю это, используя ключевое слово static, но никак не могу скомпилировать это:
Код: Выделить всё
static constexpr QStringLiteral Controller::s_min_qt_version = "5.9.0";
Здесь есть аналогичный вопрос, но я не могу понять ответа. Означает ли этот ответ, что я ТАКЖЕ должен определить переменную в моем файле .h (поскольку это не фундаментальный тип)? Это немного больше работы, чем мне хотелось бы при замене одной строки DEFINE... но я хочу научиться.
Подробнее здесь:
https://stackoverflow.com/questions/793 ... e-cpp-file