默认构造函数、默认拷贝构造函数、默认析构函数、默认赋值运算符

这四个是我们通常大都知道的。但是除了这四个,还有两个,那就是取址运算符和 取址运算符 const

即总共有六个函数。
一个示例如下:

class Empty
{
public:Empty();// 缺省构造函数Empty(const Empty&);// 拷贝构造函数~Empty();// 析构函数Empty& operator=(const Empty& ); // 赋值运算符Empty* operator&();// 取址运算符const Empty* operator&() const;// 取址运算符 const};

但是,C++默认生成的函数,只有在被需要的时候,才会产生。即当我们定义一个类,而不创建类的对象时,就不会创建类的构造函数、析构函数等。

说明:1) 这些函数只有在需要调用的时候,编译器才会生成。

  1. 4个函数都是public的。

  2. 4个函数都是inline的(即函数定义在类的定义中的函数)。

  3. 如果你显式的声明了这些函数中的任何一个函数,那么编译器将不再生成默认的函数。

C++ 空类,默认产生哪些成员函数相关推荐

  1. 编译器为C++ 空类自动生成的成员函数

    在下列四种函数没有显式声明时,编译器将会自动生成: (1)缺省构造函数:(2)缺省拷贝构造函数:(3)缺省析构函数:(4)缺省赋值运算符:(5)缺省取址运算符:(6)缺省取址运算符 const 转载于 ...

  2. 类的概念、成员函数的定义方式、类的访问控制和封装、类的大小、this指针

    文章目录 类的概念 struct class class和struct的区别是什么呢? 类中成员函数的两种定义方式 声明和定义都在类中 声明和定义分离 类的访问控制和封装 类的封装特性 类的大小 结构 ...

  3. C++模板学习02(类模板)(类模板语法、类模板与函数模板的区别、类模板中的成员函数创建时机、类模板对象做函数参数、类模板与继承、类模板成员函数类外实现、类模板分文件编写、类模板与友元)

    C++引用详情(引用的基本语法,注意事项,做函数的参数以及引用的本质,常量引用) 函数高级C++(函数的默认参数,函数的占位参数,函数重载的基本语法以及注意事项) C++类和对象-封装(属性和行为作为 ...

  4. python类的成员函数_Python实现动态添加类的属性或成员函数的解决方法

    某些时候我们需要让类动态的添加属性或方法,比如我们在做插件时就可以采用这种方法.用一个配置文件指定需要加载的模块,可以根据业务扩展任意加入需要的模块. 本文就此简述了Python实现动态添加类的属性或 ...

  5. C++类的内联成员函数应放在哪

    今天复习C++ Primer的时候,看到了关于C++类的内联成员函数的放置,应该放在头文件中.那么这到底是为什么 呢?仅仅是一种代码规范问题还是必须这样做呢? 下面我就来讲讲我自己的理解吧.要彻底理解 ...

  6. 类的数据,成员函数,声明

    类的数据成员 在类中声明数据成员 类的数据成员的声明类似于普通变量的声明.如果一个类具有多个同一类型的数据成员,则这些成员可以在一个成员声明中指定. class Cube { //Cube类表示立方体 ...

  7. C++抽象基类和纯虚成员函数

    公共接口是指一系列成员函数的集合,支持该接口的类必须以合适的方式重新定义这些成员函数,否则就无法创建对象.在C++中,可以通过抽象基类来实现公共接口. 纯虚函数 纯虚成员函数的声明语法如下: virt ...

  8. PTA实验题:6-2 Tree类的构造函数和成员函数 (10 分)

    定义一个Tree(树)类,有成员ages(树龄),不带参数的构造函数对ages初始化为1,成员函数grow(int years)对ages加上years,age()显示tree对象的ages的值. T ...

  9. [C++]分数类的定义(成员函数、运算符重载)

    [C++]分数类的定义(成员函数.运算符重载) 1 分数类成员和成员函数 1.1 分数类成员 1.2 分数类的成员函数 1.3 分数类的io操作 1.4 分数类的预定义 2 成员函数定义 2.1 化简 ...

  10. c++ 类的内联成员函数

    c++ 类的内联成员函数 1.什么是内联函数 在类的声明内部声明和定义的函数叫做内联成员函数,如下面例子,函数setA是普通的成员函数,函数setB是隐式的内联函数,函数setC是显式的内联函数. / ...

最新文章

  1. linux下安装虚拟天文馆,如何在Ubuntu 20.04、18.04中安装Stellarium 0.20.0虚拟天文馆
  2. react 点击两次_javascript – 为什么在React中需要两次绑定onClick?
  3. OpenGL缩放转换
  4. PHPcms 把盛大登陆换成人人网登陆
  5. TensorFlow(三)常用函数
  6. php 伪造请求连接,phpcurl发送伪造请求
  7. 学生管理系统 c语言版
  8. Floyd最短路算法
  9. Delphi 开发so库,Delphi 调用SO库
  10. ccy_dlx 模块化与全局变量7-8ms
  11. python指数函数的计算,Python exp() 指数函数
  12. 创业起步 中小型网吧的组建解决方案(转)
  13. 使用NCL绘制安徽省的轮廓图
  14. 【论文导读】- Subgraph Federated Learning with Missing Neighbor Generation(FedSage、FedSage+)
  15. [腾讯校招] 微信红包
  16. HTTPResponse
  17. eclipse中svn冲突解决
  18. 雷军VS黄章:现实主义和梦幻主义的商业对决
  19. linux反向查看文件内容tac,Linux查看文件内容的方法(cat,tac,more,less,head,tail)
  20. win10小娜只会搜索网页(痕迹/历史清理相关)

热门文章

  1. webdriver高级应用- 右键另存为下载文件
  2. BZOJ 2466 中山市选2009 树 高斯消元+暴力
  3. django实现web分页的三种方法
  4. 新手做2D手游该用哪些工具?
  5. AspxTreeList获取选中项的值
  6. 探索流程的奥秘之三, 如何梳理业务流程
  7. 数据采集时总提示未登录_个税申报系统新功能!申报数据丢了也能找回!|税务局|个税|办税服务厅|纳税...
  8. linux修改resolv自动清除,centos 6.2的/etc/resolv.conf自动清空问题
  9. 转换文档参数_1分钟教会你将Excel转换成Word,简单高效,办公人士必备神技
  10. 基于Jenkins的嵌入式软件持续集成方法