[C/C++]类成员的类型

类中对象的类型确定:类中的成员变量的类型如何使用?何时用继承,何时用指针(引用),何时用正常的成员变量:首先所有的类型都可以看作是一个类的对象,哪怕是最最基本的int。然后通过分析这个对象与本类的关系,来决定用什么类型:

  • ①【内存成员】如果是组合关系,缺一不可,缺少后本类的对象就生不出来了,那就必须用正常的占据内存的成员变量,比如人这个类中的手这个对象。
  • ②【纯内部指针】如果是一对一使用关系,且共享生命周期,那么用纯指针,比如人穿的衣服这个对象(假设一个人一生就穿一件衣服),这件衣服在这个人穿的时候,其他人是无法使用这个衣服对象的,那么人这个类中的衣服对象应该用纯指针,跟随类一起析构。
  • ③【智能指针】如果是一对一使用关系,但是不共享生命周期,比如人和共享自行车,首先是一对一的关系,当使用这两自行车的时候,其他人是没有办法使用的,但是又不是生命周期,本类使用完毕后,其他人还是可以用,这个时候,用智能指针。
  • ④【引用】如果是一对多的使用关系(比如一些共享的数据),比如天气预报app,那所有人都可以同时进行使用,且生命周期和本类没有任何关系。哪怕没有人用,仍然可以存在,自行进行管理,可以用引用(即本类不影响app这个对象的生命周期) 。
  • ⑤【不作为类内部成员】如果只是本类对象非常临时的使用(类的依赖关系),两者生命周期无关,不需要在本类的多个方法中进行调用,那么此时不需要存储成类的成员变量,直接通过类的方法的入参传入使用一下即可)。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值