Advertisement

C语言中的const和C++中的const有什么区别

阅读量:

区别一: 在C语言中,const标识符用于定义一个只能进行读取操作而不能进行修改的数据类型。而在C++中,则直接将const视为一种常量类型。

复制代码
    const int a = 5;
    int array[a];//在C语言中是错误的,因为在C语言中是定义了一个只读变量
    int array[a];//在c++中是正确的,因为在C++中定义了一个常量

区别二:
在C语言中不允许定义const函数,在C++中则可定义const函数。
在C++中设计的const成员函数将被设计为无法修改类中的成员变量。(此处就不举例说明了)

指针常量和常量指针:

1、指向指针的常量:当const在*号前面就是指向常量的指针。

复制代码
    const char *p1 = "123456";
    char const* p2 = "123456";
    
    p1 = "werr";  //正确,可以再指向其他的常量
    p1[0] = 'a'; //错误,不能修改指向地址的值

2、常量指针:当const在*号之后

复制代码
       char *const p1 = "12445";
       p1[0] = 'w';  //正确,可以修改指向内存的值
       p1 = 

全部评论 (0)

还没有任何评论哟~