首页 > 试题广场 >

写出下列clone()操作的一个版本,使它能在通过参数传来的

[问答题]
写出下列clone()操作的一个版本,使它能在通过参数传来的Arena里安放创建的对象。实现一个简单的Arena派生的Arena类。
class Expr {
public:
  Expr();             // 默认构造函数
  Expr(const Expr&);  // 复制构造函数
  virtual Expr* new_expr() { return new Expr(); }
  virtual Expr* clone() { return new Expr(*this); }
  // ...
};

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