Преобразование между C ++ std :: vector и C массив без копирования

Я хотел бы иметь возможность конвертировать между std :: vector и лежащим в его основе C массивом int * без явного копирования данных.

Предоставляет ли std :: vector доступ к базовому массиву C? Я ищу что-то подобное

vector<int> v (4,100)
int* pv = v.c_array();

РЕДАКТИРОВАТЬ:

Кроме того, возможно ли сделать обратное, то есть как бы я инициализироватьstd::vector из массива C без копирования?

int pv[4] = { 4, 4, 4, 4};
vector<int> v (pv);

Ответы на вопрос(5)

Ваш ответ на вопрос