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;
    }
  • 相关阅读:
    有关phpmailer的详细介绍及使用方法
    威盾解密
    PHP正则表达式验证是否含有中文
    php防止重复提交表单
    simplexml 对xml的增删改操作
    Javascript正则表达式完全学习手册
    利用JS做到隐藏div和显示div
    js控制div显示与隐藏
    后台登陆地址
    MVC 自定义路由
  • 原文地址:https://www.cnblogs.com/qkhh/p/1037491.html
Copyright © 2011-2022 走看看