Я запутался с моей функцией умножения на основе шаблонов с двумя входами и типом, который должен быть получен.Как я должен получить тип функции?
template<typename T, typename U>
DERIVED_TYPE multiply(T t, U u) {
return t * u;
}
Хорошо, я знаю, что auto
или decltype(auto)
делает работу довольно хорошо, но я хотел бы, если смогу, другой способ, изучениеодна причина.Например, для Eigen
DERIVED_TYPE multiply(Matrix<int, 2, 3> t, Matrix<double, 3, 4> u) {
return t * u;
}
DERIVED_TYPE
должно быть, конечно, Matrix<double, 2, 4>
.