浅谈C++类之间的关系

浅谈C++类之间的关系

想用另外一个类的时候有几种方法:定义对象(依赖),放一个指针(关联),传参数(组合)
依赖: (传参数)(一个空气的对象)没有生命期的关系 (CAir&air) 调用用air.show();多用于在函数中没有参量,仅只有函数 。在主函数中要定义一个空气的对象。不用在主类中定义对象 .是类与类之间的连接,表示一个类依赖于另一个类的定义,其中一个类的变化将影响另外一个类。例如如果A依赖于B,则B体现为局部变量,方法的参数、或静态方法的调用。
关联: (有没有)可以有可以没有 (CFriendpFriend)需要在主类中定义一个其它类的指针CFriendm_pFriend,调用时用pFriend->rp; 它使一个类知道另一个类的属性和方法, 类与类之间的联接,它使一个类知道另一个类的属性和方法。
聚合:(一对多)是强版本的关联:是一种所属关系,有生命期的关系 。在主函数里创建五个对象,在类里面装这五个对象,首先定义一个指针数组,并初始化为空,再加一个析构。都要用遍历的方法去赋值(CPerson*ps),if(ps!=0){for(int i=0;i<10;i++){if(arr[i] == 0){arr[i] = ps;return;}}}当要管理一堆对象,首先要遍历数组,然后拿每一个数组元素,用指针的方式去调用每一个自己的函数的自函数,在用到其它工具的时候,当然不要忘记传参数。普通关联关系的两个类处于同一层次上,而聚合关系的两个类处于不同的层次,一个是整体,一个是部分。同时,是一种弱的“拥有”关系。体现的是A对象可以包含B对象,但B对象不是A对象的组成部分。具体表现为,如果A由B聚合成,表现为A包含有B的全局对象,但是B对象可以不在A创建的时刻创建。
组合 :在主类中定义两个子类的变量然后在函数中调用,有生命期的关系. 是比聚合关系强的关系。它要求普通的聚合关系中代表整体的对象负责代表部分的对象的生命周期。Composition(组合关系)是一种强的“拥有”关系,体现了严格的部分和整体的关系,部分和整体的生命周期一致。如果A由B组成,表现为A包含有B的全局对象,并且B对象在A创建的时刻创建。用的时候不要忘了把头文件拿到总的.H文件中。
继承:(把父类的内容拷贝一份到子类)形式:class CCina : public CPerson
在派生类里面可以用protected:类型的参数,继承是为提高复用性,深色部分是继承方式,无论什么继承方式,父类的private成员是不可访问的。
Public继承: public不变 protected 不变 private 不可访问
protected继承:public变 protected protected不变private 不可访问
private继承:public变private protected变private private 不可访问

																											浅谈C++类之间的关系
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值