Pour info : pour utiliser std::setprecision, il faut inclure le fichier <iomanip>, car autrement, le compilateur ne comprend pas ce qu'on lui veut
As tu bien inclus ce fichier?
EDIT : Mouarf, je viens, en lisant la doc de iomanip, de découvrir quelque chose que j'ignorais depuis 8 ans: get|set_money et get|set_time
- Edité par koala01 27 novembre 2019 à 15:06:32
Ce qui se conçoit bien s'énonce clairement. Et les mots pour le dire viennent aisément.Mon nouveau livre : Coder efficacement - Bonnes pratiques et erreurs à éviter (en C++)Avant de faire ce que tu ne pourras défaire, penses à tout ce que tu ne pourras plus faire une fois que tu l'auras fait
Bon, c'est bon ça fonctionne. La méthode setprecision ne fonctionne pas avec QTextStream et il faut utiliser la méthode qSetRealNumberPrecision(int number).
Ce qu'il y a à retenir, c'est que peu importe si tu stockes ça sous un std::vector<double> un qvector<double> ou un CequeTuVeux<double>, dedans ce sont des double.
Un double c'est environ 13 chiffres significatifs, donc en mémoire, tu as largement la précision dont tu as besoin. Changer de conteneur ne sert à rien.
C'est juste au moment ou tu veux l'afficher que tu choisis avec combien de digits tu l'affiches.
A noter aussi que tu devrais utiliser un debuggueur : le debuggueur te donne les double avec suffisamment de chiffres significatifs.
PS: A moins que tu aies une raison très valable, n'utilise pas la fonction at(), car elle inclue une validation de l'indice, ce qui ruine les perfs, n'apporte rien, masque une erreur de programmation potentielle. Préfère la notation en tableaux (l'operateur []).
PS: A moins que tu aies une raison très valable, n'utilise pas la fonction at(), car elle inclue une validation de l'indice, ce qui ruine les perfs, n'apporte rien, masque une erreur de programmation potentielle. Préfère la notation en tableaux (l'operateur []).
Et mieux encore: utilise de préférence la boucle basée sur les intervalles qui est disponible depuis C++11:
for(auto it : Datas)
flux<< it<<";"
vu que tu veux, de toutes manières, parcourir l'ensemble de ta collection, c'est beaucoup plus simple, et beaucoup moins sujet à erreur
Ce qui se conçoit bien s'énonce clairement. Et les mots pour le dire viennent aisément.Mon nouveau livre : Coder efficacement - Bonnes pratiques et erreurs à éviter (en C++)Avant de faire ce que tu ne pourras défaire, penses à tout ce que tu ne pourras plus faire une fois que tu l'auras fait
Merci pour vos réponses et pour vos conseils d'amélioration. C'est noté et compris
Problème avec std::vector
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
Recueil de code C et C++ http://fvirtman.free.fr/recueil/index.html
Recueil de code C et C++ http://fvirtman.free.fr/recueil/index.html
Recueil de code C et C++ http://fvirtman.free.fr/recueil/index.html
Recueil de code C et C++ http://fvirtman.free.fr/recueil/index.html