Я узнал, что из C ++ 17 с помощью инструкций по выводу могут быть выведены аргументы шаблона std :: vector, например. из инициализации:
std::vector vec = { function_that_calculate_and_return_a_specifically_templated_type() }
Однако я не могу позволить себе роскошь C ++ 17 в машине, где я хочу сейчас скомпилировать и запустить код.
Есть ли возможный обходной путь для C ++ 11? Если существует больше решений, лучшим будет то, которое сохранит читабельность кода.
На данный момент единственная идея, которая у меня есть, - отслеживать различные случаи в коде (к счастью, их не должно быть слишком много) и делать некоторые явные typedef / using.
Любое предложение приветствуется