Я хочу получить конкретный тип данных Type с помощью другого типа T в качестве шаблонного аргумента, но не знаю как это сделать, мой код не работает:
template <typename T>
struct param_type_trait<int> {
using Type = TYPE_A;
};
template <typename T>
struct param_type_trait<float> {
using Type = TYPE_B;
};
template <class T>
void registrate_param(...) {
auto param = new_shared<param_type_trait<T>::Type>();
...
}
Компилятор GCC пишет error: template parameters not deducible in partial specialization
Я не знаю как это делается правильно