不可能的构造函数

时间:2016-06-02 11:32:07

标签: c++ constructor

所以我有这段代码:

class A{
public:
    A(){}
    A(int){}
};
int main(){
    A x;//I want this to give me error
    A x(1);//or this to give me error
return 0;
}

如何让课程无法构建?不改变构造函数的可见性;

1 个答案:

答案 0 :(得分:4)

您可以删除用户定义的构造函数,并创建默认构造函数deleted(自C ++ 11起)。

class A{
public:
    A() = delete;
};