Pour un petit projet perso qui tourne sur un puissant x86_64, peut-être de façon intermittente, et développé sur un temps libre précieux, je dirais que ce n'est pas très grave.
Pour ce qui serait censé devenir un jour un produit tournant 24/7 sur des x86_64, mais aussi sur des plate-formes embarquées plus limitées et beaucoup plus économes en énergie (ARMv7 < 1 GHz, éventuellement < 512 MB de RAM; on n'est clairement pas dans de l'embarqué obsolète type calculatrices ou encore plus limité, mais il faut quand même se préoccuper ne pas se vautrer comme un gros sale), non évolutives et avec une assez longue durée de vie... c'est quand même bête de charger la machine à faire un taux énorme d'allocations / libérations mémoire avec des objets de trop haut niveau (plus haut niveau que nécessaire), dont les conversions de strings.
Si c'est pour obtenir des données depuis une source de strings C, les traiter, puis les stocker ou diffuser sous forme de strings C ou de std::string (mais certainement pas de QString), il est stupide, parce que très inefficace, de convertir (const) char * -> QString -> char *: en gros, ça se traduit en allocation mémoire + exécution du constructeur + conversion vers UTF-16 + conversion depuis UTF-16 + exécution du destructeur + libération mémoire. Je passe sur le refcounting.
On a évité cet anti-pattern évident dans la plupart des parties de code (par exemple, dans les outils de production, nous avons à raison banni le parsing de JSON et de XML avec une quelconque librairie basée sur Qt)... sauf pour le logging. On n'a pas vu tout de suite à quel point le code basé sur Log4Qt est inefficace. Une fois qu'on a mis du logging en QString explicite quelque part (QString::format, par exemple), il faut réécrire le code - si on a le temps, bien sûr...
Tu hurlerais au fou si sur TI-68k, qui est un contexte très différent, quelqu'un faisait un truc aussi gros et aussi lent que la conversion (const) char * -> QString -> char *, Folco

Une autre façon de trop utiliser Qt, dans certains contextes tout à fait légitimes, est d'utiliser à outrance les signaux/slots. Qui dit signaux et slots, dit moc, donc méta-données contenant des noms en clair (surtout en Qt 4) et facilitant le reverse-engineering de l'application même en la complète absence d'infos de debug.
Ah, et puis un argument, beaucoup plus faible il est vrai: le temps de compilation. Si tu inclus <QObject>, tu tires plus de 50K lignes de headers C++ (j'ai regardé pour la dernière fois avec un Qt 5.3, je dirais). Si tu inclus par flemme <QtCore>, qui tire des dizaines de headers, c'est pire. En plusieurs étapes sur quelques mois, j'ai réduit le temps de build de la partie principale du projet de ~4m10s vers ~2m40s, alors que l'application grossissait entretemps. Une des étapes significatives de l'optimisation était de ne pas inclure <QtCore> à tout va, et de ne pas inclure <QObject> dans les headers de plus haut niveau.
Comme beaucoup de choses en informatique et dans la vie de tous les jours: Qt, c'est bien, mais point trop n'en faut.