Здравствуйте, uzhas, Вы писали:
U>ошибка компилятора довольна точна: не получается вывести тип T (т.к. речь идет о целом семействе типов) из входного аргумента 10 типа int. надо как-то подсказать компилятору что вы хотите: struct_t<double> или struct_t<int> или struct_t<int64_t> или еще что
Да тут и struct_t<std::vector> тоже подходящий кандидат.
Плюсую вариант с промежуточной функцией, тут двое уже назвали его.
Нет такой подлости и мерзости, на которую бы не пошёл gcc ради бессмысленных 5% скорости в никому не нужном синтетическом тесте