У меня есть массив unsigned char Temp[SERVER_BUFFER_SIZE]
C-стиль, и я хочу, чтобы скопировать его в std::deque
в конце (больше как добавить его)Использования зОго :: копии для копирования в станд :: DEQUE
std::deque<unsigned char>* buffer = new std::deque<unsigned char>();
std::copy(Temp[0], Temp[SERVER_BUFFER_SIZE], buffer->cend());
И Я получаю много ошибок, подобные этим:
ошибка 4 ошибка C2825: «_Iter»: должен быть класс или пространство имен, когда следует «::» C: \ файлы программы (x86) \ Microsoft визуальная студия 12.0 \ vc \ include \ xutility 371 1 a Ошибка 5 ошибка C2039: 'iterator_category': не является членом ' `global namespace '' c: \ program files (x86) \ microsoft visual studio 12.0 \ vc \ include \ xutility 371 1 a Ошибка 9 ошибка C2825: '_Iter': должен быть класс или пространство имен, за которым следует ':: 'c: \ программные файлы (x86) \ microsoft visual studio 12.0 \ vc \ include \ xutility 372 1 a Ошибка 12 ошибка C2602:' std :: iterator_traits < _InIt> :: value_type 'не член базы класс 'STD :: iterator_traits < _init>' C: \ Program файлы (x86) \ Microsoft Visual Studio 12.0 \ VC \ включить \ xutility 372 1
Почему вы используете 'new' для создания очереди? –
Чтобы я мог передать его в другое место вне области этой функции –
Чтобы добиться этого, лучше использовать 'std :: unique_ptr>'. –