首页 > 试题广场 >

下面的Handle模板不能反映以它作为句柄的类的继承关系。修

[问答题]
下面的Handle模板不能反映以它作为句柄的类的继承关系。修改这个类,使它能反映这种关系,也就是说,你应该能用Handle<Circle>给Handle<Shape>赋值,但不能反过来赋值。
template<clss X> class Handle {
  // ...
  
  X* get_rep() { return rep; }
  void bind(X* pp)
  {
    if(pp != rep) {
      if(--*pcount == 0) {
        delete rep;
        *pcount = 1;
      }
      else
        pcount = new int(l);
      rep = pp; 
     }
   }
};

这道题你会答吗?花几分钟告诉大家答案吧!