Come inizializzare std::array<T, n>
se T non è predefinito costruibile?Come inizializzare std :: array <T, n> con eleganza se T non è il default costruibile?
so che è possibile inizializzare in quel modo:
T t{args};
std::array<T, 5> a{t, t, t, t, t};
Ma n
per me è parametro di modello:
template<typename T, int N>
void f(T value)
{
std::array<T, N> items = ???
}
E anche se non era modello, è abbastanza brutto a ripetere valore a mano se n
è troppo grande.
Sì, è possibile scrivere una funzione o due per generarli. – chris
L'aiuto 'fill() '? – Arun
@Arun, no. Può essere chiamato solo su array già costruiti. – RiaD