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

关于C++指针、引用和const关键字的各种关系

时间:2020-03-25 01:04:25      阅读:64      评论:0      收藏:0      [点我收藏+]

标签:意义   c++   常量   ons   class   const   float   绑定   原来   

const int x1=0;//常量写法1
    int const x2=0;//常量写法2
    int x3=0;
    int * const p1=&x3;//指针常量(指针类型的常量,对象是指针类型的,指针本身是常量,顶层const)
    const int* p2=&x1;//指向常量的指针(指针本身是变量,指向的数据是常量,底层const)
    const int* const p4=&x1;//指向常量的指针常量(顶层+底层const)
    const new_type p5=&x3;//指向变量的指针常量(相当于const (int*) p4=&x3;首先p4是常量,指向一个int变量,顶层const)

    int& r1=x3;
    const int & r2=x1;//常量引用写法1
    int const & r3=x2;//常量引用写法2
    
    //引用不是对象,初始化后就不能改变,故引用只区别指向常量or不指向常量
    float pi=3.14;
    //int &x=pi;非法,因为这样不同类型的引用绑定实际上是声明一个临时量int tmp=pi;int &x=tmp;
    //绑定一个临时量的引用无意义,因为不能改变原来的pi值,故c++直接报错

 

关于C++指针、引用和const关键字的各种关系

标签:意义   c++   常量   ons   class   const   float   绑定   原来   

原文地址:https://www.cnblogs.com/FdWzy/p/12288134.html

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