c++ 杜撰new操作符(创建抽象基类对象的拷贝)

c++ 虚拟new操作符(创建抽象基类对象的拷贝)
基类定义如下:
class Query{
public:
virtual Query *clone() = 0;
};
派生类定义如下:
class NameQuery : public Query
{
public:
virtual Query *clone()
{
return new NameQuery(*this);
}
};

Query *pq = new NameQuery();
Query *pq1 = pq->clone();//获取抽象基类的“拷贝”