У меня есть функция со следующей подписью:
template<typename Container, auto First = 0, auto Last = Container::size()>
doSomething(const Container& containter){...}
Есть ли способ, который позволит изменить порядок параметров шаблона, поэтому я мог бы вызвать функцию следующим образом:
doSomething<3,5>(someContainer);
Вместо того, чтобы делать это:
doSomething<decltype(someContainer), 3,5>(someContainer);
Это не было бы проблемой, если бы я мог двигаться someCountainer
после Last
, однако значение по умолчанию Last
получено из Container
. Есть ли способ пересылки объявлений Container
в списке параметров шаблона или какой-либо функциональности, которая позволила бы мне избежать необходимости добавлять decltype(...)
каждый раз?