标签: c++ explicit
可能重复: What does the explicit keyword in C++ mean?
关键字显式是什么意思?
答案 0 :(得分:5)
只有一个参数的C ++构造函数会自动执行隐式类型转换。例如,如果在构造函数需要字符串指针参数时传递int,则编译器将添加必须具有的代码以将int转换为字符串指针。但是,您可能并不总是想要这种自动行为。
您可以向构造函数声明添加显式以防止隐式转换。这会强制代码使用正确类型的参数,或将参数强制转换为正确的类型。也就是说,如果演员表没有在代码中明显表达,则会产生错误。
explicit (C++)