C ++ 17 позволяет нам выводить аргументы шаблона std::array
. Например, я могу написать
std::array ints = { 1, 2, 3 };
и ints
будут иметь тип std::array<int, 3>
.
Мой вопрос таков: что, если я хотел бы указать только аргумент типа массива, но автоматически определить размер массива?
Следующее не работает, так как кажется, что должны быть указаны все аргументы шаблона:
std::array<size_t> sizes = { 1, 2, 3 };
Мой компилятор жалуется и говорит: 'std :: array': слишком мало аргументов шаблона .
Возможно ли, чтобы размер массива определялся автоматически путем вывода аргумента шаблона? Если нет, возможно ли создать массив, указав только его тип, но не его размер?