Я хотел бы иметь возможность конвертировать между std::vector и его базовым C массивом int * без явного копирования данных.
Предоставляет ли std::vector доступ к базовому массиву C? Я ищу что-то вроде этого
vector<int> v (4,100)
int* pv = v.c_array();
EDIT:
Кроме того, возможно ли сделать обратное, то есть как бы инициализировать std::vector
из массива C без копирования?
int pv[4] = { 4, 4, 4, 4};
vector<int> v (pv);