c++ 限定类型自动转换

explicit限定类型自动转换

#include <iostream>

using namespace std;

class typeConvet
{
public:
	int num;
	explicit typeConvet(int a):num(a)  //2. 加上explicit关键字,限定类型自动转换
	{

	}
};


//explicit 限定类型自动转换,避免代码歧义

int main(int argc, char *argv[])
{
	//typeConvet tc = 10;		  //1.代码有歧义,自动转换为(typeConvet) 10; 加上explicit关键字,则编译不成功
	typeConvet tc = (typeConvet)10;   //3.强制转换,可以编译成功
	cin.get();
	return 0;
}
秋风 2018-03-22