参数传递和返回值

一、pass by value vs. pass by reference(to const)

 pass by value:这个数据有多大,就整个包传递,压入到栈中。尽量不要这样传。

pass by reference:像指针但是更漂亮。引用在底部就是个指针,尽量都传引用。例子中传引用且加了const,不希望传过去被更改。

二、return by value vs. return by reference(to const)

可以的情况下,返回值的传递也尽量用by reference。

什么时候不能返回引用:例如,传入两个参数为两个复数,该函数实现一个复数的加法,这时候要在函数内部新创建一个结果。因为函数一结束,这个东西就死亡了,但是却传了一个引用出去,这时候不能传引用。

friend:友元。例子中的友元函数,可以直接拿private中的实部虚部。相当于打破了封装。

 三、注意:相同class的各个objects互为友元

没有写friend,但是标黄色的可以直接拿实部虚部。 

 

posted @   Niiiinomiya  阅读(16)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
点击右上角即可分享
微信分享提示