中的引用

分离设备压滤设备2021年09月06日

2、常引用

常引用声明方式:const 类型标识符 引用名=目标变量名;

用这种方式声明的引用,不能通过引用对目标变量的值进行修改,从而使引用的目标成为const,达到了引用的安全性。

【例3】:

int a ;

const int ra=a;

ra=1; //错误

a=1; //正确

这不光是让代码更健壮,也有些其它方面的需要。

【例4】:假设有如下函数声明:

string foo( );

void bar(string s);

那么下面的表达式将是非法的:

bar(foo( ));

bar(\"hello world\");原因在于foo( )和\"hello world\"串都会产生一个临时对象,而在C++中,这些临时对象都是const类型的。因此上面的表达式就是试图将一个const类型的对象转换为非const类型,这是非法的。

引用型参数应该在能被定义为const的情况下,尽量定义为const 。

3、引用作为返回值

要以引用返回函数值,则函数定义时要按以下格式:

类型标识符 函数名(形参列表及类型说明)

{函数体}

说明:

(1)以引用返回函数值,定义函数时需要在函数名前加

(2)用引用

返回一个函数值的最大好处是,在内存中不产生被返回值的副本。

【例5】以下程序中定义了一个普通的函数fn1(它用返回值的方法返回函数值),另外一个函数fn2,它以引用的方法返回函数值。

#include iostream.h

float temp; //定义全局变量temp

float fn1(float r); //声明函数fn1

float fn2(float r); //声明函数fn2

float fn1(float r) //定义函数fn1,它以返回值的方法返回函数值

{

temp=(float)(r*r*3.14);

return temp;

}

float fn2(float r) //定义函数fn2,它以引用方式返回函数值

{

temp=(float)(r*r*3.14);

return temp;

}

void main() //主函数

{

可见商标对一个企业的作用有多大。” 他说 float a=fn1(10.0); //第1种情况,系统生成要返回值的副本(即临时变量)

float b=fn1(10.0); //第2种情况,可能会出错(不同 C++系统有不同规定)

//不能从被调函数中返回一个临时变量或局部变量的引用

float c=fn2(10.0); //第3种情况,系统不生成返回值的副本

//可以从被调函数中返回一个全局变量的引用

float d=fn2(10.0); //第4种情况,系统不生成返回值的副本

//可以从被调函数中返回一个全局变量的引用

coutacd;

}

外科
广州治疗子宫内膜炎医院
伤口吃什么愈合的快
相关阅读
奥赛康:母公司新药ASKG315获临床试验申请受理通知书

奥赛康6月15日晚间公告,子公司浙江奥赛康生物医药有限公司于据悉送出国家...

2023-09-04
赢在职场:30岁前频繁自立门户换岗位的你,如何面对三十岁后的人生

开篇修订版: 母公司的小冯最终递交了下台报告,我并不需要签字批准。 男...

2023-09-02
2022年一季度深圳10+1区GDP排行曝光!深圳年初将全面加大投资力度

蛇口2022年第三季度10+1区里GDP位列 NO.1:南较高原东部里区里1840.28亿元,上年...

2023-08-31
中国西电(601179.SH)聘任石丹兼任总会计师、董事会秘书

中国西电(601179.SH)公告,田喜民因退休原因,向美国公司理事会申请辞去总会...

2023-08-30
富国基金股权转让新进展:山东金融资产豪掷50.39亿元收购富国16.675%股权,回报率高达352.

安邦基金会16.675%持股受让方终于出炉! 之前青岛市国际性信托股份控股(简...

2023-08-28
熬猪油,只加盐是“外行”!多加3样,猪油雪白香浓,抽1年不会坏

蒸灰糖,只芥菜是“充其量”!多加3十分相似,灰糖雪灰珠浓,抽1年不能再...

2023-08-27
友情链接