• 关于c++中const的基本用法


    c++中的const 有点类似于c里的宏定义#define,但是似乎是在宏定义基础上的代码优化,具体我解释不清,下面主要提到的是

    const 在c++中的3中基本用法:

    1.指向常量的指针

    例如:const char*  pc=“sada";

    含义:声明一个名为pc的指针变量,它指向一个字符型常量,初始化pc为指向字符串"sada";

    由于指针指向的是一个字符型常量,const不允许改变指针指向的字符型常量,故

    例如

    p[2]='s';是错误的,但是却可以改变pc所指的地址

    pc=“asdas”;

    正确;

    2.对于和指向常量的指针截然不同的是常指针,

    常指针具体在例子中体现,

    例如:char* const pc="asd";

    这种定义方式是错误的;

    经过实际操作可知,必须定义变量,如果是常量将无法进行修改。

    会报warning

    因为此时的pc是常量,

    应采用此种定义方式

    char a[]="sadd";

    char* const pc=a;

    含义

    把指针变量所指的地址,而不是它指向的对象声明为常量。

    可以改变地址中的数据,但是不能改变指针指向的地址

    即pc[2]='x';正确

    pc=”sdaasdas";错误;

    3.是前两者的结合版

    指向常量的常指针;

    const char* const pc="ada"

    这种用法是地址中的数据及地址都不能修改;

    更多详细解析请参考  https://blog.csdn.net/tham_/article/details/45846647

  • 相关阅读:
    最大期望算法 Expectation Maximization概念
    Apriori 关联算法学习
    mysql小问题
    C4.5决策树算法概念学习
    线性回归概念学习
    决策树概念学习
    Flink on Yarn运行机制
    Flink单机版安装与wordCount
    Kmeans算法学习与SparkMlLib Kmeans算法尝试
    数据挖掘10大算法详细介绍
  • 原文地址:https://www.cnblogs.com/Staceyacm/p/10782123.html
Copyright © 2020-2023  润新知