我有 2 个没有任何函数的类:
template<class Type>
class Core {};
template<class... ClassType>
class Base {
};
我希望在 convert()
中实现一个 Base
函数,可以将 Base<int, double>
转换为 Base<Core<int>, Core<double>>
,例如:
Base<int, double> base0;
Base<Core<int>, Core<double>> target0 = base0.convert();
Base<char, bool, double> base1;
Base<Core<char>, Core<bool>, Core<double>> target1 = base1.convert();
它基本上是一个类型参数列表上的映射函数。转换任何
Base<x, y, z...>
到 Base<Core<x>, Core<y>, Core<z>...>
。我如何实现这样的功能?