第十一天和第十二天: 当需要对自定义数据类型进行类似于对内部数据类型进行内部操作时使用操作符重载函数。 尽可能的编写全面的operator...()函数,以便操作符两边出现不同数据类型组合时,操作符重载依旧有效。 再操作符重载函数中不要将多余的参数传递进去,VC++象处理其它成员函数一样负责传送接受this指针。 不要远离操作符原来的意思。 在重载操作符两边放置同名的类变量,可以使得一个类变量为空。 可以使用友元函数编写要把内部数据类型和自定义数据类型进行操作的,操作符重载函数。 如果将与复合操作符等价的操作符重载了,最好也重载该复合操作符。如如果重载了*最好将*=也重载。这样做的好处是有助于丰富类的功能。 在重载复合操作符时一定要返回一个this指针的间接引用。这种操作符必须返回一个左边操作符被修改的备份。 不能精确的比较两个浮点数的值。不要轻易重载关系比较符。如与&&或||。 如果要把内部数据作为左操作符而自定义数据类型作右操作符时,为了防止this指针的干扰,又为了能访问类中的私有成员,所以必须用友元函数。 重载递增及递减操作符也必须返回this指针。 学习了输入<<和输出>>操作符的重载,通过编写简单的operator<<(),掌握了一种方法,将main()函数的烦琐细节除去,交给自定义的类去处理。istream和ostream的对象是和输入输出流数据相连的,由于能够存取流中数据,就还可以编写I/O操作算子函数。 下标符号也可以重载,使得余下的程序可以访问单个的成员或成员的数组元素。使用下标符号能创建安全的数组,能实现上下界自检。 |
鏀惰棌鎴愬姛鏌ョ湅鏀惰棌>>
正在阅读:『21天精通C++』第二周学习笔记(2-2)『21天精通C++』第二周学习笔记(2-2)
2004-02-14 09:34
出处:PConline
责任编辑:zwg
键盘也能翻页,试试“← →”键