C++三法则

来源:互联网 发布:猴王水果竞猜php 编辑:程序博客网 时间:2024/05/15 06:24

C++三法则:如果需要析构函数,则一定需要拷贝构造函数和赋值操作符

如何理解这句话,首先,从“如果需要析构函数”这里我们知道,类中必然出现了指针类型的成员(否则不需要我们写析构函数,默认的析构函数就可以用了),所以,我们需要自己写析构函数来释放给指针所分配的内存来防止内存泄露,那么为什么说“一定需要拷贝构造函数和赋值操作符”呢,原因还是这样:类中出现了指针类型的成员。有指针类型的成员,我们必须防止浅拷贝问题,所以,一定需要拷贝构造函数和赋值操作符,这两个函数是防止浅拷贝问题所必须的。


原创粉丝点击