2013年10月11日
摘要: 1、为什么要使用友元?面向对象的4个特征:继承,封装,多态,抽象。对于封装,也就是类的私有成员只有成员方法才可以访问。但是某种情况下,其他方法迫切需要访问类的私有成员,为了解决这个问题,C++开了一个窗户,通过定义方法为友元方法可以访问类的私有成员。2、友元方法不是当前类的成员方法,但是可以访问当前类的私有成员。3、如何使用?在一个类中,声明一个方法为它的友元方法,这个方法可以是普通方法,也可以是其他类的成员方法。4、延伸--友元类在一个类A中,声明一个方法Func为类A的友元方法,则Func可以访问类A的私有成员。那么,在一个类A中,声明类B为类A的友元类,则类B就可以访问类A的私有成员。 阅读全文
posted @ 2013-10-11 20:41 Andy Niu 阅读(366) 评论(0) 推荐(0)
摘要: 1、为什么要使用操作符重载?操作符和方法在本质上一样,使用操作符更符合人性化的描述。2、操作符重载分为 普通操作符重载和成员操作符重载,区别在于: a、普通操作符重载要访问对象的私有成员,因此要设计为friend,而成员操作符重载不需要; b、相比于普通操作符重载,成员操作符重载,少了一个形参,因为成员方法总是与对象绑定使用的,被绑定的对象就是操作符的第一个参数;示例代码: 1 #include "StdAfx.h" 2 3 class Point 4 { 5 private : 6 int x; 7 int y; 8 9 public :10 Point ()... 阅读全文
posted @ 2013-10-11 19:59 Andy Niu 阅读(294) 评论(0) 推荐(0)