جهت تبدیل بهینه از آدرس عناصر vector استفاد کنید چون vector هم مثل new و malloc تضمن می کنه که حافظه به صورت پیوسته اشغال بشه.
int arr[5]={1,2,3,4,5}; vector<int> vec(arr,arr + 5); for (size_t i=0; i < vec.size();i++) cout << vec[i] << endl;
توی C++11 میتونی از این روش استفاده کنی :
std::vector<int> vect({ 11, 7, 7, 4, 5 });
برای تبدیل ارایه هم این شکل :
int a[] = { 7, 2, 3, 4, 5 }; std::vector<int> vect(std::begin(a), std::end(a));