这几个空应该怎么填哇?
希望有人能够解答,这是之前卷子上面的,谢谢各位!
这题简直跟我当年考C++的大题一模一样。。。
1.CStudent(){StuAge=0;}
这里要求填默认构造函数,默认构造函数是一个与类同名且没有变量的函数,一般用于初始化类的参数,这里是考对默认函数定义的记忆,这里不写StuAge=0;其实也能运行,写了保险一点。
2.CStudent
这里填构造函数,构造函数与类同名,但与默认构造函数不同的是可以携带参数,由于下方的代码里用到了变量n,所以这里写一个int n
3.return Stuage
这里要读取成员变量的值,整个类中的成员变量只有StuAge,而这个变量是私有的,私有变量只有类内部的成员函数能访问,所以这里是写了一个接口将内部的变量返回了出去。
4.stuAge=n
既然成员函数SetAge接收了一个变量(int n),那么所谓的赋值就是把这个n的值赋给StuAge了。
5.private
注释要求是私有继承,在类的继承中,私有继承使用关键字private,公有继承使用关键字public,所以这里填private。
6.SetAge
其实这个地方注释的位置不太准确,因为下面一行代码才是输出成员变量的代码,然而因为这个位置携带一个参数,而类CStudent中能接收参数的只有函数SetAge(int n),这里其实是在考私有变量的重新赋值,我估计这题下面应该还有个题是问输出了哪两个值吧。
7.s2.GetAge2()
由于题目中CJSNUStudent对于CStudent的继承是私有继承,因此CStudent中的函数和变量在CJSNUStudent中是不能直接访问的,必须通过CJSNUStudent自身存在的GetAge2函数访问,所以这里填s2.GetAge2()