大家好,我叫徐锦桐,个人博客地址为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;
};