Лучше использовать vector
всякий раз, когда вы можете, из-за множества преимуществ, которые он предоставляет (автоматическое управление памятью, проверка границ и т. Д.).
Кроме того, чтобы вектор резервировал для вас несколько элементов.чтобы использовать (т. е. выделять столько всего сразу в памяти вместо того, чтобы в конечном итоге изменять его размер при добавлении элементов), вы можете передать это число конструктору вектора:
int x;
cout<<"Enter integer x:";cin>>x;
vector<double> v(x);
Или, если вы ужесоздал вектор, используйте vector::resize
:
// created v somewhere up here and we want to reuse it
int x;
cout << "Enter integer x: "; cin >> x;
v.resize(x);
И нет, нет никакого способа указать вектору использовать память, которую вы уже распределили, если вы не используете пользовательский распределитель [R.Мартиньо Фернандес, комментарии].