У меня есть много функций, определенных так:
template<class T>
std::tuple<Matrix<T>, Matrix<T>, Matrix<T>> gaussSeidel(Matrix<T> const& A, Matrix<T> const& b, long double precision) {
...
}
Теперь я хочу сохранить ссылку на них в шаблонной векторной переменной, которую я пытаюсь объявить так:
template<typename T>
std::vector<std::tuple<Matrix<T>, Matrix<T>, Matrix<T>> (&) (Matrix<T>, Matrix<T>, T)> functs {gaussSeidel<T>, jacobi<T>, richardson<T>, sor<T>, gmres<T>};
Он генерирует много ошибок C2528 при создании экземпляра (decltype(auto) functs<long double>
) при компиляции в Visual Studio, возникающих из распределителя. Куда я иду не так?