Основная причина заключается в том, что Qt (и, соответственно, вы!) Позволяет писать нетиповезопасный код: существует неявное преобразование из QByteArray
в QString
. Определите QT_RESTRICTED_CAST_FROM_ASCII
для всего проекта, сотрите папку сборки и пересоберите проект. Вызов, использующий объект const, не будет скомпилирован, и вам придется исправить сигнатуры функций: вы должны были постоянно получать ссылки на const.
void testFun(const QByteArray &arr){
QTextStream out(stdout);
out << "QByte" << endl;
}
void testFun(const QString &str) {
QTextStream out(stdout);
out << "QStr" << endl;
}