stringstream : augmenter la taille initiale du buffer
Bonjour à tous,
je suis débutant en C++ et j'ai un problème de performance avec l'utilisation d'un stringstream.
Pour corriger ce problème, je dois augmenter la taille initiale du stringbuf qui est utilisé par le stringstream pour éviter des milliers d'allocations.....
Apparament, je n'arrive pas à augmenter cette taille malgré l'utilisation de la méthode pubsetbuf:
Code:
1 2 3 4 5 6 7 8 9
|
stringstream ss;
ss.precision(20);
char mybuffer [100000];
ss.rdbuf()->pubsetbuf(mybuffer,100000);
for(int i=0 ; i<40000 ; i++) { // boucle bidon
ss << (2*((double)i)+1)/11;
} |
la ligne ss.rdbuf()->pubsetbuf(mybuffer,100000)
ne change pas la temps d'exécution !
Help !