码迷,mamicode.com
首页 > 编程语言 > 详细

C++ const关键字修饰引用

时间:2016-06-15 14:10:05      阅读:130      评论:0      收藏:0      [点我收藏+]

标签:

//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");
}

 

C++ const关键字修饰引用

标签:

原文地址:http://www.cnblogs.com/zhanggaofeng/p/5587021.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!