c++ default删除函数怎样使用

avatar
作者
筋斗云
阅读量:2

在C++中,如果不显式定义一个类的析构函数、拷贝构造函数和拷贝赋值运算符重载函数,编译器会自动生成默认的版本。这些函数被称为默认的删除函数。

如果想要使用默认的删除函数,只需在类的声明中声明这些函数,并在定义中不做任何操作即可。例如:

class MyClass { public:     // 默认的析构函数     ~MyClass() = default;      // 默认的拷贝构造函数     MyClass(const MyClass& other) = default;      // 默认的拷贝赋值运算符重载函数     MyClass& operator=(const MyClass& other) = default; }; 

在这个例子中,我们使用= default来声明默认的析构函数、拷贝构造函数和拷贝赋值运算符重载函数。

注意,如果类中包含了用户自定义的析构函数、拷贝构造函数或拷贝赋值运算符重载函数,编译器不会为其生成默认的删除函数。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!