最新回答 / 慕仔446654
有些成员变量在实例化的时候就基本固定了,比如说你的性别,这些成员通常避免写set()函数,我们不希望有人通过set()随意地修改这个值,可以避免误操作,我想这应该算一个原因吧
2017-03-28
最赞回答 / 慕仔5649330
test(t1)是函数调用,调用test函数,传入实参t1,t1是类teacher的一个对象;test函数参数不是引用或者指针类型,所以传参的时候是会拷贝t1,传入test函数的
2017-03-19
最赞回答 / 追梦人153
拷贝构造函数一般加在构造函数的后边,当你建立同一类的多个相同对象时需要对对象进行初始化,这时候拷贝构造函数就派上用场了。在拷贝构造函数的定义格式了,用const来限制拷贝构造函数的形参,表明这个拷贝构造函数的形参只能引用不能修改。在const的后边是类名加一个符号&,这样写就是这么定义的我们只需遵照人家的规则来写就行。
2017-03-18
最赞回答 / 慕运维9949243
因为后面定义数据成员时已定义了char *m_pName;所以在构造函数中没有必要写成char *m_pName=new char[20];如果有帮助希望采纳
2017-03-13
已采纳回答 / 慕粉4369313
你问题问的不是很清楚,大概解释一下,类中的数据成员如果没有初始化,不同的编译器在分配内存空间会自动赋值,这个值有的编译器是0,有的编译器是一个随机数(一般是一个很大的数),所以跟study函数没有关系,以为m_iScore已经被赋值了。你的编译器应该是自动赋值为0,所以没有初始化函数也会正常打印数值,但如果再换一个编译器就不一定了。
2017-03-07