【C++】C++为什么要引入引用这个复合类型?

函数参数有直接变量(如int、char、double等)类型、指针类型和引用类型。
如果参数是变量,传递方式是传值,就是将实参的值复制(复制,意味着空间消耗和时间消耗)到“栈”空间中。
如果参数是指针,传递方式是传址,需将指针复制(同样也消耗空间和时间,对于数组而言,只需存储数组首地址)到“栈”空间中。
如果是引用,则既不是传值,也不是传址,主调函数和被调函数共享参数的存放地址,与全局变量共享方式相同。
对于拷贝(复制)构造函数而言,类对象通常需要较多的存储空间,如果按值传递,必然会较大消耗“栈”空间,也需要较多的时间实施复制过程。因为复制构造函数不会修改参数的内容,也不会修改参数的属性,所以构造函数的参数应该是常量引用传递,如ClassName(const ClassName &obj)

转载于:https://www.cnblogs.com/yueyuechen/p/6437980.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值