在 C++14 中不支持 using 声明中的参数包扩展,因此以下代码无法编译:
template<typename T> struct A
{
virtual void foo(T);
};
template<typename... T> struct B: public A<T>...
{
using A<T>...;
};
是否有解决方法可以达到相同的结果?否则,必须手动拼出预期类型的 using 声明,并在每次使用新类型时修改类。
在 C++14 中不支持 using 声明中的参数包扩展,因此以下代码无法编译:
template<typename T> struct A
{
virtual void foo(T);
};
template<typename... T> struct B: public A<T>...
{
using A<T>...;
};
是否有解决方法可以达到相同的结果?否则,必须手动拼出预期类型的 using 声明,并在每次使用新类型时修改类。