类的默认构造函数能否定义为私有

来源:互联网 发布:ubuntu 装 anaconda 编辑:程序博客网 时间:2024/05/16 08:48

class A{

     A();

    ……

}

int main(){

     A a;

     return 0;

}

编译将会出错:error C2248: 'A::A' : cannot access private member declared in class 'A'

构造函默认为为私有,在类的外部无法访问。如果在主函数里面声明a,系统调用默认构造函数,而私有变量无法在主函数中调用。

要注意理解私有变量“私有”在哪:体现在类的内外。类内属于私有范围,私有变量只能在类内使用。