Given (in C++)einfachste Weg, eine Folge von Bytes in einen größeren Puffer in C++
char * byte_sequence;
size_t byte_sequence_length;
char * buffer;
size_t N;
Angenommen byte_sequence
und byte_sequence_length
initialisiert zu wiederholen, bis zu einem gewissen beliebigen Länge Bytefolge (und seine Länge) und buffer
wird initialisiert, um auf N * byte_sequence_length
Bytes zu zeigen, was wäre der einfachste Weg, die byte_sequence
in buffer
N
mal zu replizieren? Gibt es etwas in STL/BOOST, das schon so etwas macht?
Zum Beispiel, wenn die Sequenz "abcd" wäre und N
3 wäre, dann würde buffer
am Ende "abcdabcdabcd" enthalten.
Ein Kommentar zur ersten Lösung - wenn Sie sBuffer.reserve (byte_sequence_length * N) aufrufen, bevor Sie die Anhänge ausführen, können Sie mehrfache Neuzuweisungen verhindern. – Eclipse