C++的空类有哪些成员函数:
. 缺省构造函数。
. 缺省拷贝构造函数。
. 缺省析构函数。
. 缺省赋值运算符。
. 缺省取址运算符。
. 缺省取址运算符 const。
. 缺省构造函数。
. 缺省拷贝构造函数。
. 缺省析构函数。
. 缺省赋值运算符。
. 缺省取址运算符。
. 缺省取址运算符 const。
注意:有些书上只是简单的介绍了前四个函数。没有提及后面这两个函数。但后面这两个函数也是空类的默认函数。另外需要注意的是,只有当实际使用这些函数的时候,编译器才会去定义它们。
#include<iostream>
using namespace std;
class class1
{
public:
class1(){}//缺省构造函数
class1(const class1&){}//拷贝构造函数
~class1(){}//析构函数
class1&operator=(const class1&){}//赋值运算符
class1*operator&(){}//取址运算符
const class1*operator&()const{}//取址运算符 const
};
//空类class2会产生class1一样的成员函数
class class2
{
};
void main()
{
class2 obj1;//缺省构造函数
class2 obj2;
obj1=obj2;//赋值运算符
&obj2;//取址运算符
class2 obj3(obj1);//拷贝构造函数
class2 const obj4;
&obj4;//取址运算符 const
}

本文介绍C++中空类的默认成员函数,包括构造函数、析构函数及取址运算符等,并通过示例代码展示这些成员函数是如何被隐式定义的。
3092

被折叠的 条评论
为什么被折叠?



