经典问题解析

1、经典问题解析。
    1、const 什么时候是常量,什么时候是变量。
    2、const 常量的判断准则。
        1、只有字面量初始化的 const 常量才会进入符号表,--真正意义上的常量。
        2、使用其他变量初始化的 const 常量依旧是只读变量。
        3、被 volatile 修饰的 const 常量不会被放入到符号表(外部,多线程,中断),依旧是只读变量。
        4、在编译期间不能被初始化的 const 常量都不会放入到符号表,都是只读变量。
        5、const 引用到类型与初始化变量的类型:
            相同:初始化变量称为只读变量。
            不同:生成一个新的变量。
    3、关于引用的疑问。
        1、引用和指针有什么联系,如何理解"引用的本质就是指针常量"。
        2、指针是一个变量
            1、指针的值作为一个内存地址,不需要被初始化,可以保存不同的地址。
            2、通过指针可以访问对应内存地址中的值。
            3、指针可以被 const 修饰成常量或者变量。
    4、引用只是一个变量的新名字。
        1、对引用的操作(赋值,取地址),都会被传递到代表的变量上面去。
        2、const 使其代表的变量拥有只读属性。
        3、引用在定义时必须初始化,在后面无法代表其他的变量(不可以复用)。
        4、从C++语言的角度来看:指针和引用没有任何关系,引用是变量的新名字,操作引用就是操作代表的变量。
        5、从C++编译器的角度来看,为了支持"引用"这一个新概念,必须有一个好的解决方案。C++编译器内部"引用"用指针常量来实现,所以引用必须初始化。
        6、在工程项目开发中,当进行C++编程时,直接站在使用的角度,与指针毫无关系。
                          当进行项目调试时,应该站在编译器的角度看待引用的概念。

小结:
    1、C++中不支持引用数组。
    2、指针是一个变量。
    3、引用是一个变量的新名字。
    4、在编译器内部用指针常量实现"引用"。
    5、编译时不能直接指定初始值的 const 标识符都是只读变量。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值