explicit作用于类的单参数构造函数。作用是禁止构造函数参数进行隐式类型转换 分析: 只能用于构造函数只能用于含有单个参数的构造函数。因为无参数肯定不会做类型转换,多个参数默认要求显示类型转换。但是当构造函数有多个参数,只有一个参数没有默认值时,也会支持隐式类型转换,因此这时候explicit也时有效的。很多C++库中都使用了explicit,抑制隐式类型转换可以避免难以察觉的逻辑错误。