/*
         A--抽像基类(纯虚函数Clone())
          ↓
   B--抽像类(未实现Clone())
          ↓
             C--子类(实现Clone())
         
 D--模板类(基类为A,模板参数为A)  我想实例化这个模板类,可是不成功,
 D<A>* pDA = new D<A>();  //错误:抽像类不能初始化
 D<A>* pDA = new D<C>();  //错误:无法从C转换到A 请问如何实例化pDA呢?
*/

解决方案 »

  1.   

    发出帖子后怎么变形了啊,重发一下:A--抽像基类(纯虚函数Clone())
     ↓
      B--抽像类(未实现Clone())
      ↓
        C--子类(实现Clone())
                     
      D--模板类(基类为A,模板参数为A)    我想实例化这个模板类,可是不成功,
      D <A> *   pDA   =   new   D <A> ();     //错误:抽像类不能初始化
      D <A> *   pDA   =   new   D <C> ();     //错误:无法从C转换到A请问如何实例化pDA呢?
      

  2.   

    修改
      D--模板类(基类为*A,模板参数为*A) 
      

  3.   

    这个D没有实现clone,是一个抽象类,是不能实例化的,你只能先把D里面的Clone实现才能写 D   <A>   *       pDA       =       new       D   <A>   ();