标签: c++ c++11
class X { public: X() = delete; X(int x = 1) : _x(x) {} private: int _x; }; int main() { X x; // why is this call ambigious? }
在上面的代码中,为什么删除默认构造函数时主要ambigious中的构造以及何时编译代码?!有意义的是,当删除时,构造只有一个构造函数可以调用(即具有默认参数的构造函数)