AMT*_*AMT 1 c++ instantiation explicit-conversion
我最近偶然发现了一个接收单个指针参数的显式构造函数.我想知道在这种情况下是否需要显式关键字?因为没有指针的构造函数所以不能有任何隐式转换.
class Foo {
public:
explicit Foo(int* int_ptr);
}
Run Code Online (Sandbox Code Playgroud)
以下代码:
void f(Foo) {}
int main()
{
int* p;
f(p);
}
Run Code Online (Sandbox Code Playgroud)
无法编译explicit.
没有它,幸福编译.
| 归档时间: |
|
| 查看次数: |
252 次 |
| 最近记录: |