zoukankan      html  css  js  c++  java
  • 今天复习C++的const,又学到了很多内容,总结一下[原创]

    关于const的用法限制,可以用下面的一张表来表示

    const int *p int cont *p int *const p
    申明时是否需要初始化
    是否可以指向常变量
    是否可以指向变量
    是否可以重新指向
    (*p)++ 是否可以进行
    总结 const修饰的是 *p,即p指向的单元的值,那个单元的值不能改变 它是否和const int *p等价? const修饰的是p内存存放的内容,这个内容不能改变,因此说它不能重新指向别的地址

    下面是测试代码支持

    void TestConst()
    {
      
    const int a = 100;
      
    const int c = 200;
      
    int b = 1;
      
    int d = 10;
      
      
    // test1 
      const int *p1;
      p1 
    = &a; // OK
    //  (*p1)++; // ERROR
      p1 = &c; // OK
      p1 = &b; // OK 
      b++// OK
    //  (*p1)++;
      cout<<*p1<<endl; // 2
      
      
    // test2
    //  int *const ssss; // ERROR
    //  int * const p2 = &a; // ERROR
      int * const p2 = &b; // OK
    //  p2 = &d; // ERROR
      b++;
      (
    *p2)++//OK
      cout<<*p2<<endl;
      
      
    // test3
      int const *p3 = &a; // OK
    //  int const *p3 = &b; // OK
      p3 = &b; // OK
    //  (*p3)++;  // ERROR
      
      
    // test4
      int const *p4 = &b;
    //  (*p4)++; // ERROR
      b++;
      cout
    <<*p4<<endl;
    }
  • 相关阅读:
    机器学习介绍
    Day03 作业
    Python函数基础
    Python练习
    耳机 线控 控制播放
    edittext 底线颜色
    从service启动activity startActivity慢 的解决方案
    国产手机没有google services 和google play崩溃,判断google services是否存在
    检测耳机插入和拔出
    获取view宽高
  • 原文地址:https://www.cnblogs.com/qkhh/p/1037491.html
Copyright © 2011-2022 走看看