Prototype原型模型

来源:互联网 发布:sql timestampdiff 编辑:程序博客网 时间:2024/06/10 22:21
#include<iostream>using namespace std;//从一个对象再创建另一个可定制的对象,无需知道任何的细节,并能提高创建的性能。class Base{public:    virtual void Printf() = 0;    virtual Base* Clone()    {        return 0;    }private:};class Son : public Base{public:    Son(){}    void Printf()    {        cout << "Son :: Printf()" << endl;    }    Base* Clone()    {        return new Son(*this);    }private:};int main(){    Son s;    Base* b = s.Clone();    b->Printf();    return 0;}//从一个已知的对象来从新构造一个新对象,隐藏了对象构造的实现细节,具体要怎么//实现拷贝函数,是否需要改变原来的对象属性依据我们程序的具体情况。
1 0
原创粉丝点击