Перемещение содержимого необработанного указателя в векторC++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Перемещение содержимого необработанного указателя в вектор

Сообщение Anonymous »

У меня есть, скажем, необработанный указатель

Код: Выделить всё

char * ptr = (char *) malloc(LIMIT);
size_t size;
fill_with_data(ptr, LIMIT, &size);
Теперь я хотел бы обернуть данные указателя с помощью std::vector.

Код: Выделить всё

auto v = vector(ptr, ptr + size);
Но я думаю, что использование приведенного выше синтаксиса приведет к созданию копии содержимого указателя. Есть ли способ преобразовать необработанный указатель в вектор без дублирования данных в памяти?

Подробнее здесь: https://stackoverflow.com/questions/390 ... -to-vector
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»