zoukankan      html  css  js  c++  java
  • C++笔记019:C++中的const修饰的是一个真正的常量


    原创笔记,转载请注明出处!

    点击【关注】,关注也是一种美德~


     

     

    程序一:

    我们知道数组的下标不能为变量,必须是一个确定的值。在C语言中看程序:

    #define a 10

    int main()

    {

    //第一部分

    int c=20;

    int d=10;

    int arr[c+d];

     

    //第二部分

    //int const a=20;

    //int const b=10;

    //int arr[a+b];

     

    return 0;

    }

    理所当然的编译错误,因为数组下标不能是变量。

    在C++中看相同的程序。在C++中这点没有区别,数组下标不能为变量。同样会编译错误。

     

     

    程序二

    继续在C语言中看程序修改:

    //#define a 10

    int main()

    {

    //第一部分

    //int c=20;

    //int d=10;

    //int arr[c+d];

     

    //第二部分

    int const a=20;

    int const b=10;

    int arr[a+b];

     

    return 0;

    }

     

    发现编译错误!错误原因跟修改前一致!

    也就是说:C语言中const定义的a、b实质并不是常量!还是变量所以称之为“常变量

    在C++中看相同的程序:

    int main()

    {

    //第一部分

    //int c=20;

    //int d=10;

    //int arr[c+d];

     

    //第二部分

    int const a=20;

    int const b=10;

    int arr[a+b];

     

    return 0;

    }

     

    编译通过!!!

    结论

    C++中的const修饰的是一个真正的常量而不是C中变量(只读。C++中在const修饰的常量编译期间,就已经确定下来了。

     

     


    原创笔记,转载请注明出处!

    更多精彩请关注微信公众号:依法编程


     

     

     
  • 相关阅读:
    LeetCode344
    LeetCode18四数之和扩展N数之和
    LeetCode383赎金信
    2018-2020创业总结
    LeetCode454四数相加
    普通dll项目添加WPF的Window对象
    WPF中RadioButton的数据绑定
    02 C# 文件压缩与解压
    WPF 使用附加属性声明 ICommand
    自定义WPF分页控件
  • 原文地址:https://www.cnblogs.com/tyyhmtyyhm/p/9005695.html
Copyright © 2011-2022 走看看