C++ explicit关键字使用方法

大家好,我叫徐锦桐,个人博客地址为www.xujintong.com。平时记录一下学习计算机过程中获取的知识,还有日常折腾的经验,欢迎大家来访。

解释

explicit关键字用于类中的构造函数,大白话:不是参数能自动进行类型转换吗,explicit就是关闭这种功能的。官话:即被explicit关键字修饰的类构造函数,不能进行自动地隐式类型转换,只能显式地进行类型转换。
只有一个参数的构造函数,或者构造函数有n个参数,但有n-1个参数提供了默认值,这样的情况才能进行类型转换。

代码

class Demo
{
  public:
  Demo();                     /* 构造函数1 */
  explicit Demo(double a);        /* 示例代码2 */
  Demo(int a,double b);           /* 示例代码3 */
  ~Demo();
  void Func(void);
  private:
  int value1;
  int value2;
};
相关推荐
ox008022 分钟前
C++ 设计模式-建造者模式
c++·设计模式·建造者模式
EPSDA5 小时前
Linux命名管道与共享内存
linux·运维·服务器·开发语言·c++
萌の鱼8 小时前
leetcode 2466. 统计构造好字符串的方案数
数据结构·c++·算法·leetcode
TwilightLemon8 小时前
C++ 使用MIDI库演奏《晴天》
c++
bbqz00710 小时前
浅说 c++20 cppcoro (三)
c++·c++20·协程·coroutine·co_await·co_yield·cppcoro·co_return
ChoSeitaku11 小时前
NO.13十六届蓝桥杯备战|条件操作符|三目操作符|逻辑操作符|!|&&|||(C++)
c++·职场和发展·蓝桥杯
ByteDreamer11 小时前
C/C++内存管理
开发语言·c++
ox008012 小时前
C++ 设计模式-桥接模式
c++·设计模式·桥接模式
上元星如雨12 小时前
详解C++的存储区
java·开发语言·c++
ox008013 小时前
C++ 设计模式-原型模式
c++·设计模式·原型模式