C++中如何动态的定义一个类型说明符呢

我的需求是,有一个函数模板,函数返回值、参数、参数个数在编译期间都是无法确定,如:
template<class R, class ... T>
struct Type
{
using TestFun = R(__stdcall *)(T ... args);
};
需要等运行时,根据用户输入的字符串来确定,比如用户输入"int",那我这个模板要特化成具有int类型参数的函数。如:
Type<int, int, int>::TestFun;
我该如何由字符串"int"获取到类型说明符int呢?
typeid好像比较鸡肋,貌似无法提供什么帮助,我应该具体如何实现呢?

既然是不确定,代码一路下来都用 T ...,逢到需要对比的时候才转到各种类型的比较方法上,比较方法一般也通用,除非有特殊需求

没有人知道吗