C ++: Best accumulatore di testo
-
18-09-2019 - |
Domanda
Testo ottiene accumula frammentario prima di essere inviato al cliente.
Ora usiamo propria classe che alloca la memoria per ogni pezzo come char massiccia. (In ogni caso, funziona come char[][]
+ std::list<char*>
).
Poi si costruisce l'intera stringa, convertirlo in std :: pungono e quindi creare boost::asio::streambuf
utilizzarlo. Questo è abbastanza lento, suppongo. Correggetemi se sbaglio.
Lo so, in molti casi viene utilizzato tipo semplice FILE
da stdio.h
. Come funziona? Alloca memoria ad ogni scrivere in esso. Quindi, è più veloce e c'è un modo di leggere in boost::asio::streambuf
da FILE
?
Aggiungi : Hm. Ho dimenticato una cosa grande :). La compilazione di DLL e l'applicazione principale è fatta sotto alcuni compilatori, quindi dovrebbe avere alcuna roba STL al suo interno ... perché di solito causano un sacco di problemi, durante l'esecuzione DLL.
Soluzione
Non ho idea di quanto sia efficiente è, ma io di solito uso un ostringstream per questo genere di cose
Altri suggerimenti