`
webcode
  • 浏览: 5930563 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

将函数的返回值引用定义为引用

 
阅读更多

“将函数的返回值定义为引用”是一种比较有效的做法。

例如(分析见程序的注释):

对比一下没有返回引用的情况:

显然这种函数返回值为引用的方法大有用武之地,最常见的就是用在重载流插入/提取运算符函数中,例如:

因为输出c3后紧接着要输出c2,所以要求cout<<c3(即operate <<(cout, c3))必须返回流提取对象cout,故必须使函数operate <<(cout, c3)的返回值能直接使用,即:必须将函数返回值设置为引用。

请自行分析下面的程序:

执行的结果为:

0012FF7C, 0012FF7C, 0012FF78

a和b的地址不等。

返回指针的情形

例如:

分析:str能得到p吗?不能!因为函数调用结束后p的内存就被回收了,所以最好是利用传参数的形式定义p或者将p定义为全局变量。

所以要避免返回 指向函数内部定义的变量或字符串常量 的指针。

end

分享到:
评论

相关推荐

    PHP函数 -函数的高级用法.ppt

    * PHP函数 -----函数的高级用法 课程内容 可变函数 引用函数返回值 函数的嵌套调用 函数的递归调用 回调函数 一、可变函数 一个变量的值可以为另一个变量的名称。此外,一个变量的值还可以是一个函数的名称,这就是...

    50_引用作为函数参数和返回值的好处1

    1. 在函数内部会对此参数进修改 2. 提函数调和运效率 1. 以引返回函数值,定义函数时需要在函数名前加 & 2. 引返回个函数值的最好处是:在内存中不产被返

    Python 函数知识点总结

    函数返回值 四.函数的嵌套调用 五.局部变量 六.全局变量 七.多函数程序的基本使用流程 八.拆包、交换变量的值 九.引用 十.函数使用注意事项 一.函数定义和调用 什么是函数 ? 如果在开发程序时,需要某块代码多次,...

    PHP程序设计:PHP函数.ppt

    * PHP函数 -----函数的基本用法 课程内容 函数的定义 函数的调用 函数的参数 函数的返回值 一、函数的定义 在PHP中,函数就是将重复使用的功能写在一个独立的代码块中,在需要时进行单独调用,其语法格式如下: (1...

    Python程序基础:函数基本概念.pptx

    定义函数时,圆括号内是使用逗号分隔的形式参数列表(简称形参),调用函数时向其传递实参,根据不同的参数类型,将实参的值或引用传递给形参。;但当参数类型为可变数据类型(如列表、字典、集合等)时,在函数内部...

    Python语言程序设计教程 北理工Python课程第6章-函数与递归-2-函数的调用和返回值 共19页.pdf

    【大纲】 0-1-课程内容和安排介绍 1-1-计算机的概念 ...第6章-函数与递归-2-函数的调用和返回值 第6章-函数与递归-3-改变参数值的函数 第6章-函数与递归-4-程序结构和递归 第6章-函数与递归-5-函数实例

    Project组织应用

    设a为长度为n的整数型一维数组。 (1)试编写求a中的最大值、最小值和平均值的函数void aMAX_MIN_AVE(int *a, int n, int &max;, int &min;, int &aver;), 用“引用参数”带回结果。 (2)试编写函数 int prime_...

    JS中的构造函数详细解析

    一旦函数被作为构造函数执行,它内部的this属性将引用函数本身。 通常来说,构造函数没有返回值,它们只是初始化由this指针传递进来的对象,并且什么也不返回。如果一个函数有返回值,被返回的对象就成了new表达式的...

    函数、内存、一维数组、二维数组

    定义函数可以将功能代码进行封装 便于对该功能进行复用 函数只有被调用才会被执行 函数的出现提高了代码的复用性 对于函数没有具体返回值的情况,返回值类型用关键字void表示, 那么该函数中的return...

    创建一个日期类,定义几个变量:年、月、日、小时、分钟、秒;

    构造函数的参数为System.DateTime类型,然后将值分别赋给定义的变量;然后构造两个重载方法SetTime,分别使用按值传递参数和按引用传递参数方式来对定义的变量进行计算。然后定义一个方法DisplayTime将这些变量的值...

    JavaScript程序设计课件:函数的调用方式.pptx

    当函数定义完成后,要想在程序中发挥函数的作用,必须得调用这个函数。 函数的调用非常简单,只需引用函数名,并传入相应的参数即可。 函数声明与调用的编写顺序不分前后。 5.2.2 函数的调用方式 2、函数的调用方式 ...

    利用引用的方式求圆的面积

    定义一个普通的函数fn1(其用返回值的方法返回函数值),另外一个函数fn2(其以引用的方法返回函数值),其中,fn1和fn2的函数功能都为求圆的面积。

    Python函数知识点(详解)

    函数返回值四.函数的嵌套调用五.局部变量六.全局变量七.多函数程序的基本使用流程八.拆包、交换变量的值九.引用十.函数使用注意事项 一.函数定义和调用 什么是函数 ? 如果在开发程序时,需要某块代码多次,但是...

    python之装饰器,多重装饰器,多层函数装饰器

    理解装饰器之前先要理解闭包 ...– 外部函数返回值必须是内嵌函数。 闭包函数的调用方式: 变量 = 外部函数名(参数) 变量(参数) 函数名变量存储着函数内存地址 def test(): print("这是test函数") print(test) # t

    c-c++及数据结构基础视频教程完整版,最适合自学的c++基础

    第二部分C++基础目录 01_C++基础课程的安排和需要持之以恒的学习态度 02_简单的C++程序helloworld 03_用面向过程和面向对象...21_函数返回值是引用(当左值右值)_传智扫地僧源码及文档 01_上一次课程复习 02_指针的引用_

    Python入门教程完整版(懂中文就能学会)资料-基础2.pdf

    变量的引用 变量的引用 变量 和 数据 都是保存在 内存 内存 中的 在 Python 中 函数 函数 的 的 参数传递 参数传递 以及 返回值 返回值 都是靠 引用 引用 传递的 1.1 引用的概念 引用的概念 在 Python 中 变量 变量...

    第十一课 引用类型1

    1.新建数组 2.数组长度 3.访问数组元素 4.修改数组元素 1.定义函数 2.调用函数 3.函数参数 4.函数返回值 5.函数的属性与方法 6.函数内的属性

    Python语言程序设计教程 北理工Python课程第6章-函数与递归-1-函数定义 共22页.pdf

    【大纲】 0-1-课程内容和安排介绍 1-1-计算机的概念 ...第6章-函数与递归-2-函数的调用和返回值 第6章-函数与递归-3-改变参数值的函数 第6章-函数与递归-4-程序结构和递归 第6章-函数与递归-5-函数实例

    C++友元函数与拷贝构造函数详解

    在类内必须将该普通函数声明为友元。 (2)友元函数不是成员函数。 不能通过对象来调用,而是直接调用;友元函数可以访问类的公有、受保护以及私有成员,但是必须通过对象、对象指针或者对象引用来访问。 2.友元函数的...

    计算机语言中c/c++的基础入门学习代码记录(适应于计算机二级)

    06函数返回值为指针类型;07数组和指针;08指针数组;09多级指针) 9.结构体(01typedef语句;02结构体定义和使用;03结构体数组;04结构体数组排序;05结构体赋值;06结构体嵌套;07共用体) 10.位运算(01位运算;...

Global site tag (gtag.js) - Google Analytics