2013-03-25 110 views
-1

我有两个类A,B,其中B继承A.我有两个结构C,D,其中D继承C.实例化一些结构C作为成员。我如何实现B实例化结构D而不是C的成员? 我当然可以将D添加为B的新成员,但是然后B也会为C分配内存,这将是浪费。C++继承超载成员

+0

请问您能展示一些代码吗? – 2013-03-25 23:27:33

回答

1

模板?

template <typename ContainedT = C> 
class A { 
    ContainedT x, y, z; 
}; 

class B : public A<D> { 
    ... 
};