社区
C++ 语言
帖子详情
用引用做参数
kaiseer8828
2013-01-31 08:08:45
c++中函数传入一个引用是不是就相当于 c语言中的传入一个指针啊 ?传引用的好处在于不用复制一个对象副本,对于深度构造,是不是我传引用就不用写复制构造函数了????
...全文
140
3
打赏
收藏
用引用做参数
c++中函数传入一个引用是不是就相当于 c语言中的传入一个指针啊 ?传引用的好处在于不用复制一个对象副本,对于深度构造,是不是我传引用就不用写复制构造函数了????
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
漫步者、
2013-01-31
打赏
举报
回复
引用是引用,指针是指针,引用做参数,不会再调用复制构造函数
wuyg719
2013-01-31
打赏
举报
回复
引用其实就是变量(对象)的别名,所以程序code不用变化就可以拷贝到函数里面。 例如 ClassA a; ... a.doSomething(); 现在换成函数: void doAll(ClassA& a){ a.doSomething(); } 如果是指针: void doAll(ClassA* a){ a->doSomething(); } 看到其中的区别了吗?不大,所以在纯C里面没有引用,经常用指针代替引用的作用。
w948230645
2013-01-31
打赏
举报
回复
当作为函数参数的时候,引用和指针差别不大。当函数参数为引用的时候,不存在使用拷贝(复制)构造函数的,因为引用其实就是变量(对象)的别名。
C/C++ 指针的13份资料
C/C++ 指针的13份资料 内容丰富,让编程人员不再害怕指针
C++ 何时使用
引用
参数
(一些指导原则)
转自:https://blog.csdn.net/rushkid02/article/details/7917131 使用
引用
参数
的原因: 1. 程序员能够修改调用函数中的数据对象 2. 通过传递
引用
而不是整个数据对象,可以提高程序的运行速度。 当数据对象较大时(如结构和类对象),第二个原因最重要,这些也是使用指针
参数
的原因。这是有道理的,因为
引用
参数
实际上是基于指针的代码的另一个...
值
参数
与
引用
参数
总的来说值
参数
和
引用
参数
都是一种
参数
传递的方式。 本质上:值
参数
传递就是将实参的值复制给形参,而
引用
参数
就是将形参直接当
做
实参的别名。 从内存分配上也可以看出 值
参数
:在栈中为形参分配空间内存后,将实参的值复制给形参。
引用
参数
:在栈上不会分配空间内存,形参将作为实参变量的别名,并指向相同的内存位置。 两者的区别: 值
参数
:未使用过ref或out修饰符的
参数
、
引用
参数
:在方法的声明和调用中都使用ref 注意点: 在变量在用作实参之前,必须要被赋值。如果是
引用
类型变量,可以赋值为一个
引用
或null 值
参数
例
何时使用
引用
参数
何时使用
引用
参数
引用
变量的主要用途是
做
函数的形参,通过将
引用
变量用
做
参数
,函数将使用原始数据,而不是副本(形参传值)。 一、使用
引用
参数
的主要原因 1.方便程序员能够修改调用函数中的数据对象。 2.通过传递
引用
而不是而不是整个数据对象,可以提高程序的运行速度。 当数据对象较大时(如结构体或类对象),第二个原因很重要,这些也是使用函数指针的原因,因为
引用
参数
实际上是基于指针的代码的另一个接口。 二、什么时候应该使用指针,什么时候应该使用
引用
,什么时候应该按值传递,下面是根据《c++ Primer Plus
【C++】
引用
作为函数
参数
C++中,
引用
作为函数
参数
引用
作为函数
参数
C++之所以增加
引用
类型, 主要是把它作为函数
参数
,以扩充函数传递数据的功能。 ———————————————————— c++,函数传参: (1)将变量名作为实参和形参。这时传给形参的是变量的值,传递是单向的。如果在执行函数期间形参的值发生变化,并不传回给实参。因为在调用函数时,形参和实参不是同一个存储单元。//同c (2) 传递变量的指...
C++ 语言
65,187
社区成员
250,526
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章