引用传递结构

今天学了C++中的引用,弄清了引用传递与值传递的差别。

值传递,函数不能访问请求调用的程序中的原始变量,只能访问函数为它创建的副本,所以函数无法破坏原变量。

引用传递,函数可以访问请求调用的程序中的实际变量(实际是变量的内存地址被传递了),可以改变原变量的值。

下面是一个引用传递结构的例子:

#include <iostream>using namespace std;struct Distance{     int feet;     float inches;};void scale(Distance&,float)void engldisp(Distance);int main(){     Distance d1={12,6.5};     Distance d2={10,5.5};     cout<<"d1="; engldisp(d1);     cout<<"\nd2="; engldisp(d2);     scale(d1,0.5);     scale(d2,0.25);     cout<<"\nd1=";engldisp(d1);     cout<<"\nd2=";engldisp(d2);     cout<<endl;     return 0;}void scale(Distance& dd,float factor){     float inches=(dd.feet*12+dd.inches)*factor;     dd.feet=static_cast<int>(inches/12);     dd.inches=inches-dd.feet*12;}void engldisp(Distance dd){     cout<<dd.feet<<"\'-"<<dd.inches<<"\"";}

原文链接: https://www.cnblogs.com/2011-9-13/archive/2011/09/13/2175223.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/32207

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年2月8日 上午9:27
下一篇 2023年2月8日 上午9:27

相关推荐