- 避免复制构造函数和析构函数的调用开销。
- 避免对象切割问题(形参是基类而实参是派生类的情况下使用值传递之后函数得到的永远是基类)。
- 对于内置对象、函数对象,以及迭代器(例如STL)来说,使用值传递或许更为高效。这是在函数对象和迭代器都设计良好的情况下。
- 小型types都最好使用值传递吗?答案是否定的。即使非常小的类型,其copy构造函数也可能非常昂贵。而且,编译器对于内置类型和用户自定义类型的态度是非常不同的。这种情况下,我可通过引用传递的参数一定会被编译器优待(放进缓存器)。
条款20:最好使用pass-by-reference-to-const替换pass-by-value
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 这是16年5月份编辑的一份比较杂乱适合自己观看的学习记录文档,今天18年5月份再次想写文章,发现简书还为我保存起的...
- 3. 类设计者工具 3.1 拷贝控制 五种函数拷贝构造函数拷贝赋值运算符移动构造函数移动赋值运算符析构函数拷贝和移...