正文
1. 问题的提出:要求函数返回对象时,可以返回引用么?
一旦程序员理解了按值传递有可能存在效率问题之后(Item 20),许多人都成了十字军战士,决心清除所有隐藏的按值传递所引起的开销。对纯净的按引用传递(不需要额外的构造或者析构)的追求丝毫没有懈怠,但他们的始终如一会产生致命的错误:它们开始传递指向并不存在的对象的引用。这可不是好事情。
考虑表示有理数的一个类,它包含将两个有理数相乘的函数(Item 3):
1 class Rational { 2 3 public: 4 5 Rational(int numerator = 0, // see Item 24 for why this 6 7 int denominator = 1); // ctor isn’t declared explicit 8 9 ...10 11 private:12 13 int n, d; // numerator and denominator14 15 friend16 17 const Rational // see Item 3 for why the18 19 operator*(const Rational& lhs, // return type is const20 21 const Rational& rhs);22 23 };
延伸阅读
- ssh框架 2016-09-30
- 阿里移动安全 [无线安全]玩转无线电——不安全的蓝牙锁 2017-07-26
- 消息队列NetMQ 原理分析4-Socket、Session、Option和Pipe 2024-03-26
- Selective Search for Object Recognition 论文笔记【图片目标分割】 2017-07-26
- 词向量-LRWE模型-更好地识别反义词同义词 2017-07-26
- 从栈不平衡问题 理解 calling convention 2017-07-26
- php imagemagick 处理 图片剪切、压缩、合并、插入文本、背景色透明 2017-07-26
- Swift实现JSON转Model - HandyJSON使用讲解 2017-07-26
- 阿里移动安全 Android端恶意锁屏勒索应用分析 2017-07-26
- 集合结合数据结构来看看(二) 2017-07-26
学习是年轻人改变自己的最好方式
