永发信息网

请问::在图中的C++程序是什么意思? 绿色标记的部分之间是什么关系呀?

答案:2  悬赏:0  手机版
解决时间 2021-03-28 02:51
  • 提问者网友:伴风望海
  • 2021-03-27 07:38
请问::在图中的C++程序是什么意思? 绿色标记的部分之间是什么关系呀?
最佳答案
  • 五星知识达人网友:上分大魔王
  • 2021-03-27 08:27
1、这是一个C++程序,一个main入口函数和一个类test;
2、类test有三个公有(即public)访问类型的成员函数:show(),set(),test(),其中,~test()是类的析构函数,并且是显示声明的,每个类都有一个对应的构造函数和析构函数,没有写出来,则使用默认的构造和析构函数,本类的构造函数则就是使用默认的,且根据代码test t;可以看出调用的是默认的无参构造函数;
3、类test拥有两个私有(即private)访问类型的成员变量:num(int整形),name(string字符串),由于都有static关键字修饰,说明这两个私有的成员变量都是静态的,即只能在类内声明,类外初始化,且可以被类的静态和非静态成员函数访问;
4、类内的绿色部分,也就是类的私有访问部分的,是类的两个静态类型的数据成员的声明,而类外的绿色部分恰恰是他们的定义,C++规定,类的静态数据成员变量必须在类内声明,类外定义和初始化,而且必须在变量名前加"类名::"格式的前缀,本类只在类外定义,并没有初始化,规范的编码规则则是最好定义的同时进行初始化;
5、main里定义了类test的一个对象,同时隐式的调用了类的默认无参构造函数(所谓默认,就是编译器自动实现的,用户没有显示去实现的),然后调用类对象t的set()成员函数进行对类的两个静态私有数据成员赋值,最后调用对象t的show()函数进行显示输出;
6、完毕,望采纳,打字不容易,应该够详细了。
全部回答
  • 1楼网友:山河有幸埋战骨
  • 2021-03-27 08:48
A::B是类A引用成员B的意思,B可以是静态成员变量,静态成员函数
另外在类外实现类成员函数也需要类名::成员函数名
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯