#include<iostream>
using namespace std;
class A
{
public:
A(): a(0), b(0) {}
A(int s, int ss): a(s), b(ss) {}
int GetA() { return a;}
A* clone()
{
A* a = new A(*this);
return a;
}
private:
int a;
int b;
};
int main()
{
A a(10, 11);
A* b = a.clone();
std::cout << b->GetA() << std::endl;
return 0;
}
主要就是
A* a = new A(*this); //将this的所有属性都复制给指针a