Как определить размер std::array?C++

Программы на C++. Форум разработчиков
Anonymous
Как определить размер std::array?

Сообщение Anonymous »

В следующем коде:

Код: Выделить всё

template
int b(int q, const std::array& types)
{
int r = q;
for (int t : types)
{
r = r + t;
}
return r;
}

int main()
{
b(9, { 2,3 });
}
Как избежать необходимости указывать 2 при вызове b для N? Почему этот тип нельзя вывести автоматически? Без этого я получаю сообщение об ошибке:

'b': не найдена соответствующая перегруженная функция 'int b(int,const
std::array &)': не удалось вывести аргумент шаблона для 'N'


Подробнее здесь: https://stackoverflow.com/questions/399 ... a-stdarray

Вернуться в «C++»