1.const & 与 & 作为形参区别之一:
& 作为形参时,实参不能用不可寻址的值,更不能进行类型转换;
编译器实现const &时,生成一个临时对象,引用实际上指向该临时对象,所以const & 可以用不可寻址的值,并能进行类型转换;
例如:
double dv = 1234;
const int &ri = dv;
是正确的,编译器将其转换为:
double dv = 1234;
int temp = dv;
const int &ri = temp;
1.const & 与 & 作为形参区别之一:
& 作为形参时,实参不能用不可寻址的值,更不能进行类型转换;
编译器实现const &时,生成一个临时对象,引用实际上指向该临时对象,所以const & 可以用不可寻址的值,并能进行类型转换;
例如:
double dv = 1234;
const int &ri = dv;
是正确的,编译器将其转换为:
double dv = 1234;
int temp = dv;
const int &ri = temp;