C++关于引用问题
来源:互联网 发布:steam mac版怎么安装 编辑:程序博客网 时间:2024/05/19 07:11
(b)Sales_data &conbine(Sale_data &);
当我们调用i.conbine(s)的时候:
s是个字符串,当构造函数没有加explicit会隐士转换成类对象
(a)是正确的 编译器首先为s生成一个Sales_data对象,然后将这个临时对象
传递给conbine做参数
(b)无法编译通过 因为conbine的参数是一个非常量的引用,而s是个string对象,
编译器用s生成一个Sales_data临时对象,这个临时对象时无法传递给conbine参数的.
如果我们把函数声明修改为
Sales_data &conbine( const Sales_data&)就正确了
因为生成的临时对象是右值,不能初始化非常量引用.
int &reft; //引用只能引用左值,他是个会变的,所以不能引用右值
const int &ref;//引用既可以引用左值,也可以引用右值
0 0
- 【C/C++】关于引用和指针的问题
- C&C++关于数组的定义,引用传参问题
- c++::关于引用
- C++:关于引用
- 关于引用&的问题
- C++关于引用问题
- 关于C++引用C,C引用C++,extern的使用
- 关于引用的赋值问题
- 关于指针的引用问题
- 关于引用mshtml的问题
- 关于反向引用的问题
- 关于C++中引用&问题
- swift 数组关于引用问题
- 关于block循环引用问题
- Java关于对象引用问题
- Objective-C - 循环引用问题
- 160129关于xcode 7中object c与swift相互引用的问题。
- 关于C++,VC++.Net和C#.Net混合编程中系统库(System32目录中动态库)引用问题
- 数据结构之双向链表(JAVA实现)
- 开发一款C语言小游戏——骑士飞行棋
- 树莓派摄像头视频直播技术汇总
- 搜索二叉树
- HDU3400(三分)
- C++关于引用问题
- 数据结构和算法学习笔记-2
- 把握linux内核设计思想(三):下半部机制之软中断
- #define的一些使用方法
- iOS开发:iOS中几种数据持久化方案:你要永远地记住!
- c++问题
- 内存空间的一般性区域分布图
- hibernate 一对一映射的两种方式
- S3C2440系统时钟