#include <iostream> using namespace std; //const引用是指向const对象的引用 int main() { const int val = 1024; const int& refval = val; // int& ref2 = val; Error,val是常量 // refval=200 Error,refaval是个常量 int val2 = 1024; const int& ref3 = val2; //const 引用可以指向非const类型 double val3 = 3.14; const int& ref4 = val3; //可以,但会丢失数据 /*产生临时变量等价于》》 int temp=val3; const& int ref4=temp;*/ cout << "ref4=" << ref4 << endl; cout << "val3=" << val3 << endl; /* int& ref5 = val3; Error,不会产生临时变量*/ }
const引用与平时引用的不同:
const int vial=100;
1. const int& refval=ival; //OK
2. int& ref2=ival; //Error,这里没有const错误
int val2 = 1024; const int& ref3 = val2; //const 引用可以指向非const类型
int val=100;
int& ref=val;
ref=300; //这是可以的
int val=100;
const int& ref=val;
ref=300 //这是不可以的,因为这里ref是常量