c++问题,public类型成员可以被非成员函数访问?
答案:2 悬赏:0
解决时间 2021-02-16 08:45
- 提问者网友:斯文败类
- 2021-02-16 00:54
c++问题,public类型成员可以被非成员函数访问?
最佳答案
- 二级知识专家网友:蜜罐小熊
- 2021-02-16 01:44
public不是类型
全部回答
- 1楼网友:颜值超标
- 2021-02-16 02:51
构造函数一律都是公有成员。系统在构造对象的时候会调用构造函数的,如果是私有成员的话,就无权访问了。如果将构造函数写在private关键字后面,那么编译时会报错的。
构造函数 ,是一种特殊的方法。主要用来在创建对象时初始化对象, 即为对象成员变量赋初始值,总与new运算符一起使用在创建对象的语句中。特别的一个类可以有多个构造函数 ,可根据其参数个数的不同或参数类型的不同来区分它们 即构造函数的重载。
c++语言为类提供的构造函数可自动完成对象的初始化任务,全局对象和静态对象的构造函数在main()函数执行之前就被调用,局部静态对象的构造函数是当程序第一次执行到相应语句时才被调用。然而给出一个外部对象的引用性声明时,并不调用相应的构造函数,因为这个外部对象只是引用在其他地方声明的对象,并没有真正地创建一个对象。
如果一个类中没有定义任何的构造函数,那么编译器只有在以下三种情况,才会提供默认的构造函数:
1、如果类有虚拟成员函数或者虚拟继承父类(即有虚拟基类)时;
2、如果类的基类有构造函数(可以是用户定义的构造函数,或编译器提供的默认构造函数);
3、在类中的所有非静态的对象数据成员,它们对应的类中有构造函数(可以是用户定义的构造函数,或编译器提供的默认构造函数)。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯