我有一个类定义为:

class ExampleClass
{
public:
ExampleClass(HWND hwnd);
~ExampleClass();
    ....
    ....
    ....
}


有很多成员后来,我创建了2个指针:

ExampleClass *example1 = new ExampleClass(hwndFrame1);
ExampleClass *example2 = new ExampleClass(hwndFrame2);


在这里hwndFrame1hwndFrame2是两个不同窗口的句柄。

在某些时候,我需要同步example1example2指向的这两个类的所有成员的值。当然,我可以由每个成员来完成。但是我想知道是否有一个“一次性”解决方案。

最佳答案

缺乏任何进一步的信息,我建议:

*example2 = *example1;


如果ExampleClass使用的是编译器声明的副本赋值运算符,则应执行成员级复制,否则应执行“适当的操作”。显然,此后指向的两个对象将引用相同的基础窗口。

10-08 11:07