Mar*_*dik 4 c++ compiler-construction operators
我很满意operator =,它由编译器自动合成.但我希望它是私有的,并且不希望使用该类型的页面长定义来膨胀我的代码
Foo& Foo::operator= (const Foo& foo)
{
if (this == &foo)
return *this;
member1_ = foo.member1_;
member2_ = foo.member2_;
member3_ = foo.member2_;
...
member1000_ = foo.member1000_;
return *this;
}
Run Code Online (Sandbox Code Playgroud)
拜托,有办法做到这一点吗?
在C++ 11中它是:
class Foo
{
Foo& operator=(const Foo& source) = default;
public:
// ...
};
Run Code Online (Sandbox Code Playgroud)
不幸的是,大多数编译器还没有实现新标准的这一部分.