最新回答 / 爱于万化
当没有自己定义的时候,系统都会自动生成。但是系统生成的构造函数和析构函数是空函数,没有实际作用。定义构造函数可以发给类成员设置默认值等等,同样的,如果我们的类数据成员包含了从堆中申请的内存,类的析构函数就应当加入包含释放堆中内存的语句。或者我们需要程序在对象解散时在屏幕上输出提示信息,也可以在类的析构函数中加入提示信息。
2016-01-19
最新回答 / 大万万
不是第一个,因为this指针不需要你自己显示的进行传递。当你定义类函数显示传递指针的时候,位置随意 指针名字你也可以随意定义(当然除了this,因为已经有了一个this指针了)!网上有资料说它的函数原型中this指针的位置是函数形参的第一个,但是这个我觉得已经超出了我们目前所了解的范围。
2016-01-10
已采纳回答 / 张土土
1、Array arr1 当实例化一个arr1的时候,因为有Array Array::printInfo()存在,系统会创建一个Array类的隐形变量,我们姑且用arr2来表示隐形变量,这时arr1和arr2指向的是不同的地址,有点类似于windows的复制操作。 系统执行arr1.printInfo( return * this)的时候,其实相当于arr1.printInfo( &arr2=*this; return arr2; ),所以arr1.printInfo().setlen(5)就是a...
2016-01-07