J'ai une interrogation a la con en C++
j'ai qqpart un truc me renvoyant des donnees, genre une fonction alacon
Code :
- void monRead(void *buf, int size);
- ..
- char * bidule = new char[longueur];
- monRead(bidule, longueur);
|
j'aimerais mettre le contenu de ce que me renvoie ste fonction dans un istringstream. Et la j'ai un petit doute car visiblement, pour faire ca faut passer par un std::string, genre
Code :
- istringstream res( string(bidule, longueur), std::in);
|
Ce que j'ai peur c'est que (corrigez moi si je rate un truc):
"bidule" soit recopié dans dans le std::string
le std::string soit recopié dans le buffer interne du istringstream
et si bidule est du genre gros, ca peut devenir genant et on se promene avec des Mo de donnée pour rien. Y'a moyen d'eviter tout ce genre de chambart ? (surtout que finalement, je veux bien donner la responsabilité de la desalloc de bidule a mon istringstream)
le stringbuf de rdbuf() ? ![[:petrus75] [:petrus75]](https://forum-images.hardware.fr/images/perso/petrus75.gif)
Message édité par chrisbk le 01-12-2005 à 15:05:59