隐式转换问题
来源:互联网 发布:淘宝联盟返利时间 编辑:程序博客网 时间:2024/05/18 01:04
1.对“普通”T&的初始化必须是一个类型T的左值,因此隐式转换不会被用于非const的引用参数。
2.对一个const T&的初始式不必是一个左值,甚至可以不是类型T的;在这种情况下:
【1】首先,如果需要将应用到T的隐式类型转换。
【2】而后将结果存入一个类型T的临时变量。
【3】最后,将此临时变量用做初始式的值。
double& dr =1 //错误:需要左值
const double& cdr =1 // ok
对后一个初始化的解释为:
double temp = double(1);
const double& cdr = temp;
#include <iostream>using namespace std;class X{private: double x;public: X(int t){x=(double)t;} int m1(){return 1;} int m2() const{return 2;} friend int f1(X&){return 1;} friend int f2(const X&){return 2;} friend int f3(X){return 3;}};int f1(X&);int f2(const X&);int f3(X);void h(){ f1(99);//编译出错,原因是隐式转换不会被用于非const的引用参数 f2(99); f3(99);}int main(){ h();}
0 0
- 隐式转换问题
- 隐式类型转换问题!
- 显-隐式转换问题
- mysql 隐式转换问题
- C#中显式转换隐式转换的问题
- 隐式类型转换的问题
- c++ 隐式转换带来的问题
- C++隐式转换带来的问题
- 一个隐式转换引起的问题
- js的隐式转换问题
- sizeof()使用请注意类型隐式转换问题
- 验证where条件中类型隐式转换问题
- 复制构造函数和隐式转换 ---临时变量问题
- clob加||隐式转换造成的性能问题
- 关于mysql 隐式转换的一个小问题
- Scala隐式转换类遇到的问题
- JS各种类型问题与隐式类型转换
- Scala进阶之隐式转换作用域等问题
- BZOJ 1878 SDOI 2009 HH的项链 树状数组 + 离线处理
- (转载)数据结构-栈
- 汇编dos系统调用(输入输出篇)
- 数据结构-队列
- 神奇的开方
- 隐式转换问题
- 蛇形填数
- 购物省钱小助手让您购物更轻松,返利更简单
- javascript动画基础(五)--三角学在动画中的运用(4)
- 数据结构(java语言描述)-- 栈的两种简单实现
- 《编程导论(Java)·7.4.3 堆上的对象》
- hdu 1561 The more, The Better 树形dp+背包
- AppiumDriver升级到2.0.0版本引发的问题--Cannot instantiate the type AppiumDriver
- 【Struts2学习笔记(4)】指定需要Struts 2处理的请求后缀和细说常量定义