简单说就是用在构造函数前面 禁止隐式类型转换
比如class cls
{
explicit cls(int i)
{...}
};
另外有一个函数
void f(cls obj)
{
...
}
int i=0;
这时候调用f(i)就是错误的
没有explicit的话就可以用i隐式建立一个对象
这样做(显示调用构造函数)就是对的:cls obj(i);
posted on 2013-04-26 09:55  吉大依恋  阅读(210)  评论(0编辑  收藏  举报