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;
};

你可能感兴趣的:(c++)