//const修饰引用的两种用法 #include<iostream> using namespace std; struct Teacher{ char name[30]; int age; }; void SetA(const Teacher &t1){ //t1.age = 13; //报错 error C3490: 由于正在通过常量对象访问“age”,因此无法对其进行修改 } void main(){ //第一种用法 Teacher t; t.age = 12; SetA(t); //第二种用法 //int &b = 10; //报错 error C2440: “初始化”: 无法从“int”转换为“int &” //因为引用本质上是个常指针 无法对字面量10取地址 所以报错 const int &b = 10; //当使用常量(字面量)对const引用进行初始化时,C++编译器会为常量值分配内存空间, //并将这段内存空间的地址赋值给引用 //b = 11; //报错 error C3892: “b”: 不能给常量赋值 system("pause"); }