C++类中成员变量和成员指针变量小结

指针的确有点难理解,不过它之所以存在并大范围使用,这样做是有一定道理的。

一、C++中的类和结构使用指针定义成员作用

1、多态的要求。
如果要使用同一接口,多态设计,那么就一定要使用基类指针。只有指针才能在实力化后动态的判断使用哪个方法。

2、代码复用。有一些程序要设计成一段代码能处理多个事。用指针可以提高复用和灵活性。


3、节省内存损耗。在函数调用等一些问题上,使用指针可以减少临时内存变量和复制

比如在函数传递的时候,可以只复制一个指针(4字节)了事,而用成员变量,就会变成了size(class ccc)了,内存就会 大大占用了;
当然指针也会有副作用,在构造类的时候,也会因为是指针,而造成内存的错误;所以析构函数要释放内存,还有基类的析构函数最好要virtual


4、动态数组的内存分配。因为不能确定数组个数,指针使用new来分配可以根据运行时分配。


成员变量一般用来表示类的属性

为了提高效率,假如在你的程序当中,没有需要用到结构或者类来进行传参的话,那么就直接min b,像你说的这样用就好了,因为用指针的话多了一步间接寻址的过程,反而让程序运行时间更加长了(这个多了的时间,基本可以用ms为单位来计算)
但是有以结构或者对象来作为参数的函数时,应该用指针传递或者引用传递,假如是直接值传递的话,结构需要拷贝的时间,类则多了拷贝构造函数调用的时间,还要复制,最后可能还要调用析构函数,时间开销很大,一个函数调用10次的话,就10倍的增加,所以大部分都是直接用指针来替代,方便,简介,效率

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值