0

我有这样的课程:

class MyClass{
    int myField1;
    int myField2;

    MyMemento* getMemento(){
        auto m = new MyMemento();
        m->myField1 = myField1;
        m->myField2 = myField2;
    }

    void restore(MyMemento* m){
        myField1 = m->myField1;
        myField2 = m->myField2;
    }
}

class MyMemento{
public:
    int myField1;
    int myField2;
}

我有很多像 MyClass 这样的类,每个类都有自己独特的成员变量。但是创建/恢复备忘录的函数模式是相同的,实际的备忘录对象只包含与每个类匹配的变量。

为每个类实现这似乎非常乏味,所以想知道是否有一些现成的类、库或模式可以用来实现它?

4

0 回答 0