Inicializar std :: array com um intervalo (par de iteradores)
Como posso inicializar umstd::array
de um intervalo (conforme definido por um par de iteradores)?
Algo assim:
vector<T> v;
...
// I know v has exactly N elements (e.g. I just called v.resize(N))
// Now I want a initialized with those elements
array<T, N> a(???); // what to put here?
eu penseiarray
teria um construtor levando um par de iteradores, para que eu pudesse fazerarray<T, N> a(v.begin(), v.end())
, mas parece não ter nenhum construtor!
Eu sei que possocopy
o vetor no array, mas eu prefiro inicializar o array com o conteúdo do vetor diretamente, sem construí-lo por padrão primeiro. Como posso?