问题描述
- 引用形参和return有什么区别和联系?
-
形参是对地址进行操作。什么叫对地址进行操作?既然有时赋值形参无法把改变的变量传递给主函数,要传递只能用引用形参,那和用赋值形参,然后在被调函数最后加return的效果是否相同?在原理上有是否有什么区别?在本质上是否相同?是否可以替换?
解决方案
从编程的角度来说,都可以实现你要的目的。
但是两者产生的机器码不同,语法也不同,不知道你说的相同不同是从什么层面看。
事实上,微软的com编程,就使用指针而不是返回值来返回函数运行的结果,而返回值留给返回函数运行的状态和出错代码。这也是一种编程风格。
解决方案二:
首先你得弄清传值和传引用的区别。一般传值的话会在参数传入
被调函数的时候做一个实参的拷贝,返回传值也是一样。但传引用就
一个变量,不会拷贝了。被调函数直接用主调函数里的变量,这样对
类来说能提高效率。并且这个变量在被调函数中做到的所有改变在主调函数中一样有效
因为就是一个变量。
解决方案三:
都可以实现你的需求,却别是语法上的区别,
可以先考虑返回值,不过C++不支持多返回值,所以需要返回多个时,可以通过参数
解决方案四:
原理上说,返回值利用的是寄存器,而参数使用的是堆栈
时间: 2024-10-29 21:22:53