这个问题通常会作为笔试来靠你,如果你记忆好的话,我会建议你把答案背下来。会产生六个默认函数,依次为
缺省构造函数,拷贝构造函数,析构函数,赋值运算符,取址运算符,取址运算符 const
class Empty
{
public:
Empty(); // 缺省构造函数
Empty( const Empty& ); // 拷贝构造函数
~Empty(); // 析构函数
Empty& operator=( const Empty& ); // 赋值运算符
Empty* operator&(); // 取址运算符
const Empty* operator&() const; // 取址运算符 const
};
这其中构造函数和析构函数大家都知道。有疑问的就是拷贝构造函数,赋值运算符,以及两个取址运算符。
拷贝构造函数,有的人也称复制构造函数。它只有一个参数,参数类型是本类的引用。如果有问你,只要牢记复制,实现从源对象到目标对象逐个字节的复制。很多面试和笔试都会考这个。
赋值运算符,其实就是=等号。该运算符会把这个类的所有数据成员进行一次赋值操作。
取址运算符&