我有一堂课
class MyClass
{
public :
int a;
int b;
}
为了使用复制交换习语,我创建了函数
void MyClass::swap(MyClass& other)
{
std::swap(a,other.a);
std::swap(b,other.b);
}
如果稍后我更改了我的类并删除了 member a
,那么编译器会在swap
函数中抱怨,这很好。
但是如果我添加一个新成员,我的swap
功能就不再正确了。为了不忘记将新成员添加到交换功能,我该怎么做?