Как дешево назначить массив в стиле C для std :: vector?

В настоящее время я делаю следующее:

// float *c_array = new float[1024];

void Foo::foo(float *c_array, size_t c_array_size) {
  //std::vector<float> cpp_array;

  cpp_array.assign(c_array, c_array + c_array_size);
  delete [] c_array;
}

Как я могу оптимизировать это назначение? Я бы не хотел выполнять поэлементное копирование, а просто менял местами указатели.

23
задан user369450 1 September 2016 в 19:12
поделиться