Bonjour,
J'écris une application DOS avec Qt et je ne trouve pas de classes pour lire/écrire sur la console. Dois-je utiliser la STL ou y a-t-il une autre manière de faire ?
Version imprimable
Bonjour,
J'écris une application DOS avec Qt et je ne trouve pas de classes pour lire/écrire sur la console. Dois-je utiliser la STL ou y a-t-il une autre manière de faire ?
tu peut pluger stdin ou stdout sur un QFile
http://qt.developpez.com/doc/latest/qfile/#open-5
Y as aussi la série des QDebug, QFatal, QWarning,...
Après ca dépend de ce que tu veux faire avec stdin et stdout.
Je veux les équivalents du cout et du cin.
Pourquoi ne pas utiliser cout et cin ? :koi:
Je voulais rester homogène en utilisant que Qt et éviter de charger mon binaire avec la STL en plus.
Mais je peux utiliser et cin/cout.
Ce n'est pas <iostream> qui va exploser la taille de ton binaire. Et de tout emanière, si Qt fournissait des équivalents, ce ne seraient que des raccourcis avec cin/cout, ou dans le pire des cas stdin et stdout, ce qui te forcerait *de toute façon* à inclure des entêtes standards. Qt n'est pas magique ;)
Oui mais je comprend le besoin de DSGSLA car std::cout ne permet pas de sortir directement des QString par exemple.
La solution est de créer son propre cout à l'aide d'un QTextStream et de stdout :La même chose est possible avec cin.Code:QTextStream cout(stdout, QIODevice::WriteOnly);
Ah oui effectivement Sylvain :ccool:
Merci Sylvain.