我正在创建一个class C从可变数量的类继承的。定义了这些类的列表,例如:A,B。在函数中,class C我需要从所有基类调用函数,但对象可以是C<A,B>,C<A>或者C<B>如果我调用class Ain 的函数,C<B>我会得到一个错误。这是类的示例以及我如何尝试解决问题:
class A
{
int a;
public:
virtual void set_a(const int &value)
{
a = value;
}
protected:
virtual int get_a()
{
return this->a;
}
};
class B
{
int b;
public:
virtual void set_b(const int &value)
{
b = value;
}
protected:
virtual int get_b()
{
return this->b;
}
};
template<class ...T>
struct Has_A
{
template<class U = C<T...>> …Run Code Online (Sandbox Code Playgroud) c++ templates template-meta-programming variadic-templates c++11