1.如果函数返回一个结构而不是一个指向结构的引用,将把整个结构复制到一个临时位置,再将这个拷贝复制给dup。但在返回值为引用时,将直接复制给变量,其效率更高。

2.返回引用时最重要的一点是,应避免返回函数终止时不再存在的内存单元调用。

避免方法:(1)返回一个作为参数传递给函数的引用。

free_throws & accumulate(free_throws & target,const free_throws &sourse)

{

.......

return target;

}

(2)用new来分配新的存储空间。

3.何时使用引用参数:

(1)使用引用参数的主要原因有两个:程序员能够修改调用函数中的数据对象。

通过传递引用而不是整个数据对象,可以提高程序的效率。

(2)对于使用传递的值而不做修改的函数:如果数据对象很小,如内置数据类型或小型结构,则按值传递。

如果数据对象是数组,则使用指针,因为这是唯一的选择,并将指针声明为指向const的指针。

如果数据对象是较大的结构,则使用const指针或const引用,以提高程序的效率。,这样可以节省复制  结构所需的时间和空间。

如果数据对象是类对象,则使用const引用。类设计的语义常常要求使用引用,因此,传递类对象参数的标准方式是按引用传递。

(3)对于修改调用函数中数据的函数:如果数据对象是内置数据类型。则使用指针。

如果数据对象是数组,则只能使用指针。

如果数据对象是结构,则使用引用或指针。

如果数据对象是类对象,则使用引用。

4.函数重载:会把类型引用和类型本身视为同一个特征标,匹配函数时,并不区分const和非const变量。

5.函数模板:template<class T>

.......

(1)对于给定的函数名,可以有非模板函数,模板函数和显式具体化模板函数以及它们的重载版本

显式具体化的原型和定义应以template<>打头,并通过名称来指出类型。

(2)具体化优先于常规函数,而非模板函数优先于具体化和常规模板。

转载于:https://www.cnblogs.com/mcyushao/p/9116466.html

再读c++primer plus 003相关推荐

  1. 【学术相关】直博和读完硕士再读博,在能力上的差距有多大?

    点击上方"AI遇见机器学习",选择"星标"公众号 重磅干货,第一时间送达 来自:机器学习初学者 直博和读完硕士再读博,在能力上的差距有多大? 高赞回答一 作者: ...

  2. 【学术】直博和读完硕士再读博,在能力上的差距有多大?

    直博和读完硕士再读博,在能力上的差距有多大? 高赞回答一 作者:胖博士 链接:https://www.zhihu.com/question/425860957/answer/1549964990 能力 ...

  3. 老问题,SQL保存图片。保存以后再读出来,发现stream的大小不一致。虽然老,但没搜到结果。...

    老问题,SQL保存图片.保存以后再读出来,发现stream的大小不一致.虽然老,但没搜到结果. Delphi / Windows SDK/API http://www.delphi2007.net/D ...

  4. 讨论下直博和读完硕士再读博,在能力上的差距

    直博和读完硕士再读博,在能力上的差距有多大? 高赞回答一 作者:胖博士 链接:https://www.zhihu.com/question/425860957/answer/1549964990 能力 ...

  5. 负样本的艺术,再读Facebook双塔向量召回算法

    负样本的艺术,再读Facebook双塔向量召回算法 Facebook这篇Embedding召回的论文,之前已经有几篇文章涉及过了,分别是<Embeding-based Retrieval in ...

  6. 32岁武汉硕士毕业4年后重新高考,考上本硕需再读8年:“不是一时冲动”

    全世界只有3.14 % 的人关注了 爆炸吧知识 9月5日,程传坤收到了湖北中医药大学的录取通知书. 7月8日下午5时10分,32岁的程传坤走出湖北省武汉市新洲一中考点,一脸轻松,拿着准考证特意在新洲一 ...

  7. 聊聊内卷之下,直博和读完硕士再读博该怎么选择?

    大家好,我是写代码的篮球球痴,转发一篇考研读博的文章,希望对大家求学生涯有所帮助. 大家好,我是千与千寻,在上一篇推送之中,我们讨论了,五年之内博士是否会出现内卷,阅读量相当的高啊,在那篇推送中,我说 ...

  8. 直博和读完硕士再读博,在能力上的差距有多大?

    点上方计算机视觉联盟获取更多干货 仅作学术分享,不代表本公众号立场,侵权联系删除 转载于:知乎,机器学习初学者 AI博士笔记系列推荐 周志华<机器学习>手推笔记正式开源!可打印版本附pdf ...

  9. 再读《SAP德国造》

    再读<SAP德国造> 这本书早在2003年已经阅读.书名<SAP德国造>,但这本书确实是中国造,作者并非SAP人,也非德国人.但这本书还是有一定水准的,把SAP这个低调的德国公 ...

最新文章

  1. 标准爬虫初探,来自Python之父的大餐!
  2. 一.MongoDB简介
  3. 大剑无锋之浅析Cookie/Session/Token
  4. c#怎么做windows窗体小程序_个人想做微信小程序怎么做?
  5. java上机面试题 039_深入 Java 虚拟机之面试总结篇
  6. 动感灯箱制作流程培训_广告立体灯箱的特点有哪些?
  7. 收藏 | YOLOX模型部署、优化及训练全过程
  8. 多线程CountDownLatch和Join
  9. 异步将远程链接上的内容(图片或内容)写到本地--微信头像
  10. java简单的小程序_编写一个简单的入门java小程序
  11. linux驱动开发详解——宋宝华 笔记
  12. Linux常用命令大全 阶段性总结(二)
  13. 用计算机做电子贺卡送祝福,泰山版信息技术五年级上册第2课《电子贺卡送祝福》教案.doc...
  14. cpu上干硅脂怎么清理_电脑清灰CPU怎么涂硅脂 导热硅脂涂抹方法教程
  15. 计算机管理 未分配磁盘,win7系统对未分配磁盘空间进行分区的操作方法
  16. IDEA中HTML文档快速制作table表格快捷键方法
  17. fastposter v2.7.1 紧急发布 电商海报编辑器
  18. iOS开发:音乐播放器
  19. 大创项目(记录自己的教训)
  20. 记一次 .NET 某电子病历 CPU 爆高分析

热门文章

  1. Unity之UGUI详解
  2. Swift 5 Type Metadata 详解
  3. wordpress4.4禁用自动保存草稿和去除文章修订的方法
  4. VIM PIV插件的bug,编辑PHP大文件偶尔会丢失语法高亮
  5. Order-Independent Transparency
  6. 为产业发展储备力量 ARM携手贵州大学共建人才培养基地
  7. 使用Wechaty搭建微信文件日程匣子
  8. windows下python自带的pip安装速度过慢解决方案
  9. 解决PIP下载安装速度慢
  10. 智能交通行业车车通信和车路通信成为ITS下一个技术亮点