Witam serdecznie wszystkich forumowiczów!
Jestem początkującym programistą i napotkałem na pewien problem, z którym nie mogę sobie sam poradzić. Chodzi o to, że potrzebuje w moim programie przechowywać surowe dane binarne. Sęk w tym, że rozmiar tych danych jest nie znana w czasie kompilacji. Na początku pomyślałem, aby tworzyć tymczasowy plik binarny i zapisywać tam odpowiednie dane, a następnie po zakończeniu operacji wczytać cały plik do jakiegoś bufforu, lecz od razu ten pomysł wydał mi się mało optymalny więc zrezygnowałem z niego.
W internecie wielu ludzi poleca przechowywanie danych binarnych w postaci:
std::vector<BYTE>
Vector rozwiązałby mój problem z nie znanym rozmiarem tych danych binarnych. Lecz jeżeli w łatwy sposób mogę do takiego vectora zapisać dane typu BYTE:
std::vector<BYTE> binaryData;
BYTE buffer[n];
GetRawData(buffer, n);
for(int i = 0; i < n; i++) binaryData.push_back(buffer[i]);
To zastanawia mnie jak do takiego vektora zapisać typu WORD czy DWORD, które również będę musiał zapisać. Jak wiadomo te typy są 'cięższe' od typu BYTE i funkcja push_back() już tego nie załatwi. Czy idzie jakoś zapisać dane binarne (nie koniecznie typu BYTE) w takim wektorze ?
Pozdrawiam.