C++空类中有哪些成员函数?

发布时间 2023-08-27 18:44:14作者: 潘阳399

一共 有6个成员函数。

1.构造函数

2.拷贝构造函数

3.析构函数

4.赋值运算符

5.取址运算符

6.取值运算符const

 1 #include<iostream>
 2 using namespace  std;
 3 
 4 class Empty
 5 {
 6     Empty();  //构造函数
 7     Empty(Empty&);  //拷贝构造函数
 8     ~Empty();   //析构函数
 9 
10     Empty& operator=(Empty&); //赋值运算符
11     Empty* operator&(); //取址运算符
12     const Empty* operator&()const; //取址运算符const
13 
14 };

注意的是:只有当实际使用这些函数的时候,编译器才会去定义(实现)他们。

拷贝构造函数和赋值运算符重载有什么不同之处?

  (1)拷贝构造函数生成新的类对象,而赋值运算符不能。

  (2)由于拷贝构造函数是直接构造一个新的对象,所以在初始化这个对象之前不用检验源对象是否和新对象相同,而辅助运算符则要要检验源对象和新对象是否相同,另外赋值运算中如果原来的对象中有内存分配要先把内存释放掉。