#include <cassert>
#include <complex>
#include <iostream>class Empty{};Empty e;
Empty b = e;
Empty d;
Empty b = d;
Empty f(b);//c98--同上
class Empty2
{public://默认构造
        Empty2() {}//拷贝构造Empty2(const Empty2&) {}//重载 = Empty2& operator = (const Empty2&) {return *this;}//析构函数inline ~Empty2() {}
};//编译器为我们实现了几个类成员函数
class AnotherEmpty : public Empty
{public://同上, 只是在构造的时候,还会调用一下基类构造函数
        AnotherEmpty() : Empty() {}
};class Void
{public://如果已经写过构造函数,编译器会把剩下的成员函数生成
        Void() {}
}class NotEmpty
{public://自己写了构造函数,编译器不会生成默认构造函数NotEmpty (int a) : m_value(a)  {}private:int m_value;
}std::map<int, NotEmpty> m;
m[1] = NotEmpty(10);      //出错
//因为map会先查找key=1,有则返回其值的引用;没有,则默认插入一个NotEmpty,且用NotEmpty的默认构造函数(这里NotEmpty没有默认构造)

转载于:https://www.cnblogs.com/douzujun/p/10660619.html

【面试】编译器为我们实现了几个类成员函数?(c++)相关推荐

  1. 面试中常被问到(11)虚函数/纯虚函数

    虚函数 如何定义一个虚函数?在基类成员函数前加入virtual关键字,但并不代表此函数不被实现,只是说明允许基类指针调用派生类重写的此函数 一个类只要声明有虚函数或者从基类继承了虚函数,在编译过程中就 ...

  2. 一叶知秋:“安全“的野指针、 static函数、成员函数、this 指针、gcc编译器、name mangling

    <span style="font-size:18px;">我们从实验中去总结问题 测试一: virtual 函数和non-virtual函数 01.#include  ...

  3. 一叶知秋:“安全“的野指针、 static函数、成员函数、this 指针、gcc编译器、name mangling...

    <span style="font-size:18px;">我们从实验中去总结问题 测试一: virtual 函数和non-virtual函数 01.#include  ...

  4. 前端面试 - JS总结(1) - 基础 (数据类型, 事件与函数, 原型链)

    你不走出舒适圈,又怎么知道自己多坚强?! 前端面试 - JS总结(1) - 基础 (数据类型, 事件与函数, 原型链) 前端面试 - JS总结(2) - ES6 (let, 箭头函数, this) 前 ...

  5. 【校招面试 之 C/C++】第15题 C 回调函数

    转自:https://segmentfault.com/a/1190000008293902 做略微改动 什么是回调函数 我们先来看看百度百科是如何定义回调函数的: 回调函数就是一个通过函数指针调用的 ...

  6. C++中的空类,编译器默认可以产生哪些成员函数

    C++中创建一个空类: class Empty {}; 默认会生成4个函数,其函数的原型如下: public: Empty() { ... } Empty(const Empty& rhs) ...

  7. atoi函数_吊打面试官 | 腾讯经典考点写代码实现atoi函数

    点击蓝字关注我哦 以下是本期干货视频视频后还附有文字版本哦 ▼<腾讯经典考点-写代码实现atoi函数>▼ ps:请在WiFi环境下打开,如果有钱任性请随意 在腾讯面试时,经常会被问到如何用 ...

  8. ideajava目录显示类成员_面试:C++不可继承类

    作者:wxquare 链接:https://www.cnblogs.com/wxquare/p/7280025.html 面试中可能遇到让设计一个无法被继承的类.最简单的实现是将该类的构造函数设置为私 ...

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

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

最新文章

  1. python 将数组中部分转入新数组_python – 如何将掩码从一个数组应用到另一个数组?...
  2. 新建JRapid项目(idea创建maven多模块项目)
  3. sublime3(anaconda) 无法自动补全第三方模块
  4. hdu4740 Sum
  5. 数据中心建设提速 2021年呈四大发展趋势
  6. linux编译安装zabbix,Linux安装zabbix--CentOS7.3
  7. 【深度学习】Transformer长大了,它的兄弟姐妹们呢?(含Transformers超细节知识点)...
  8. tc351i  发送短信息 代码
  9. 高德地图开启迪士尼赠票活动 带您开启迪士尼圆梦之旅
  10. java对比swith和if的不同,浅谈选择结构if语句和switch语句的区别
  11. 引进博士:130平米住房+20万经费+15万年薪;硕士24万引进费+可聘讲师
  12. java进行多个照片合并操作
  13. 自动化测试环境搭建之RFS自动化测试框架全攻略
  14. 通过微信公众号跳转H5页面领取现金红包
  15. shape制作出来的虚线
  16. 真相(truth)最可怕的敌人不是谎言(lie),而是神话(myth)
  17. 线性表顺序存储的一些操作(初始化,添加,删除)
  18. java继承a mya new c,“内部类” 大总结(Java),内部类总结java
  19. ntp和chronyd
  20. Java IO流---字节流

热门文章

  1. LeetCode 15三数之和16最接近的三数之和
  2. 线性表C语言locate和ETget,线性表(数据结构重难点讲解)
  3. 宝藏文章!【CCNA命令大全】
  4. 阿里云性能测试服务 PTS 新面貌 - 压测协议、施压能力全新升级
  5. 程序员修炼之路:你该知道的 7 个必经阶段
  6. KubeVela 正式开源:一个高可扩展的云原生应用平台与核心引擎
  7. 电子书下载 | 超实用!阿里售后专家的 K8s 问题排查案例合集
  8. 从零开始入门 K8s | Kubernetes 调度和资源管理
  9. linux eclipse go插件,Eclipse的Go插件(goclipse)
  10. unet论文_图像分割之RefineNet 论文笔记