Effective C++ 规则05:了解C++默认编写并调用哪些函数

编译器会为类提供5个默认的函数:构造函数、析构函数、拷贝构造函数、赋值运算符、取地址的函数(这个函数用系统默认的即可)编译器提供的默认的析构函数是非虚的。需要注意的是什么时候需要重写赋值运算符和拷贝构造函数(需要深拷贝的时候)。有些时候编译器是会拒绝执行拷贝构造函数和赋值运算符的,比如类中有引用成员变量和const成员变量的时候。
class Empty{
    
    };
//写上面的代码,其实好像是像下面这样写的
class Empty{
    
    
public:
	Empty(){
    
    }
	Empty(const Empty& rhs){
    
    }
	~Empty(){
    
    }
	Empty& operator=(const Empty& rhs){
    
    }
};

猜你喜欢

转载自blog.csdn.net/xiaoan08133192/article/details/119037433
今日推荐