Вы можете использовать инициализацию списка с массивами, для которых не нужны заголовки. Например:
template <int N>
int sum(int const (& array)[N]) {
int sum = 0;
for (int x : array) {
sum += x;
}
return sum;
}
int main() {
return sum({1,2,3});
}
Недостатком массивов по сравнению с std::vector
является то, что размер массива должен быть фиксированным или передаваться в качестве аргумента шаблона.