导航

C++ const用法总结

Posted on 2015-01-22 22:35  talenth  阅读(145)  评论(0编辑  收藏  举报

1 const分顶层const,底层const

2 顶层const可以表示任意类型的对象是常量。eg:
    const int i;i是一个整型常量
    int *const ccc;ccc是指向不变的指针

3 底层const只能用来指示指针,引用等复合类型所指向的变量是常量
    const int *aaa;aaa是一个指针,不能通过aaa改变它所指向的变量的值
    const int &bbb;bbb是一个引用,不能通过bbb改变它所引用的变量的值

4 弄清出一个const声明语句的含义最行之有效的方法就是从右往左看,eg:
    const int *const ddd;
        ddd与const相邻,所以ddd的值一旦初始化就不能改变,这是一个顶层const,最左边的const是一个底层const,不能通过ddd改变它所引用的变量的值


    const int eee; 等价于int const eee;

5 不同变量的拷入拷出:
    顶层const对拷入拷出没有影响
    当拷出的变量是底层const时,考入变量也必须是底层const变量;当拷出的变量不是底层const时,考入变量没有要求