2013-03-25 123 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> { 
    ... 
};