防止隐式转换

class A{ int a; public: explicit A(int i):a(i){} }; int main() { A a(1),b(2); a = b; a = 2; //错误,不能隐式转换 A c = 2; //错误 return 0; } A b(1); A a = b; //这样才调用拷贝构造函数 A c = 2; //调用带int参数(有且仅有一个非缺省参数)的构造函数。 如果是这样: A a(1),b(2),c(3); a = b; //调用operator=() a = 2; //调用operator=(),因为缺省的operator=的参数类型是(const &),所以这里有一个隐式转换,构造出一个临时对象 A(2),就从2转换到了A(2)。operator=函数里处理的就是临时 对象A(2)。 假如你重载了operator=(int a),那就简单了。 如果重载为A &operator=(int),a=b不会出错,因为缺省的A & operator=(const A&)会起作用

explicit含义相关推荐

  1. 【c++】c++常见关键词const、static、extern、explicit含义

    c++里有几个常见的关键词,比如const.static.extern.explicit,这里就简单介绍下每个关键词的含义以及使用场景. const const相对来说还是比较简单易懂的,就是被修饰的 ...

  2. 前程无忧亚信java面试题_亚信科技面试题及参考答案

    亚信的辉煌历程见证着中国通信行业的信息化发展进程.亚信科技的求职竞争很激烈,准备好怎么回答面试题很关键,以下是小编为大家收集到的亚信科技面试题,希望对大家有帮助! 亚信科技面试题篇1 1. 排序算法 ...

  3. 40隐式构造函数和隐式转换,还有explicit关键词的确切含义【C++学习笔记】

    40隐式构造函数和隐式转换,还有explicit关键词的确切含义 隐式的意思是:不会明确地告诉你它要做什么,它有点像在某种情况下自动的工作 隐式转换 double a = 0.5; int b = a ...

  4. [概述] SAP增强基本含义及分类

    1. 增强的含义  简单地说,增强就是ERP系统中标准程序的出口,在该出口中由用户根据企业实际需求编写客户化逻辑代码.增强是ERP系统设计时考虑到企业实际的流程有可能和系统默认标准流程不同,在标准流程 ...

  5. GoldenGate 基本参数含义

    GoldenGate 基本参数含义 1. edit params命令 2. DBLOGIN USERID <user>, PASSWORD <password> 3. ADD ...

  6. 内核编译配置选项含义

    Linux 2.6.19.x 内核编译配置选项简介 作者:金步国 版权声明 本文作者是一位自由软件爱好者,所以本文虽然不是软件,但是本着 GPL 的精神发布.任何人都可以自由使用.转载.复制和再分发, ...

  7. [Hive] - Hive参数含义详解

    hive中参数分为三类,第一种system环境变量信息,是系统环境变量信息:第二种是env环境变量信息,是当前用户环境变量信息:第三种是hive参数变量信息,是由hive-site.xml文件定义的以 ...

  8. C++ typename 的双重含义

    1.模板类型参数申明 使用模板时,在申明模板类型参数时,我们经常有如下两种申明方式: // 方式一 template <class T> CTest;// 方式二 template < ...

  9. cpplint中filter参数的每个可选项的含义

    文章目录 前言 filter是什么 一个小实验 自己指定筛选规则 对照表格 总结 前言 cpplint 是一款优秀的代码格式检查工具,有了它可以统一整个团队的代码风格,完整的工具就是一个Python脚 ...

最新文章

  1. Cassandra 1.2 发布,NoSQL 数据库
  2. 利用openCV中的cvCanny函数检测人脸的边缘
  3. devc++源文件未编译_悬赏万元,重现「木兰」编程语言编译器
  4. freebsd 同步工具unison
  5. Debian+Django+uWsgi+nginx+mysql+celery
  6. 推荐系统实例-基于矩阵分解
  7. 错误:java.lang.ClassNotFoundException: com.mysql.cj.jdbc.Driver
  8. ubuntu20.x安装 podman
  9. 凸优化理论(一)数学优化问题的分类
  10. todotree配置
  11. 北京:租房合同需网签!电子签名助力合规
  12. java使用egl_EGL 学习
  13. 心理学转到计算机的女科学家,从局外人到局中人心理学研究理念演变.doc
  14. python字符串切片输出_python 字符串 切片
  15. gmt绘制中国省界,结合awk和RGB列表绘制中国地震台站分布
  16. 什么是zkSNARKs:谜一般的“月亮数学”加密,Part-1
  17. 模型可解释性-LIME
  18. kubectl 命令使用(create系列)
  19. matlab 水波模拟 代码,matlab - 在Matlab中模拟一艘在水波中航行的船 - SO中文参考 - www.soinside.com...
  20. 寻梦,总免不了迷茫1

热门文章

  1. 解析光纤跳线的5大知识点,让安装使用更顺畅
  2. Socket中send()函数和rece()函数详解
  3. 【转】几种小波阈值去噪程序
  4. SQL Server XML 数据类型
  5. ESP32设备驱动-ADXL345三轴加速计驱动
  6. Android自定义视频播放器(三)
  7. Cisco模拟器的基本使用
  8. 迎接爆炸主升浪?(附股)
  9. 【博文汇总】Java程序设计语言
  10. RadioButton 和 RadioButtonList 比较