zoukankan      html  css  js  c++  java
  • C++中this指针和const常量函数

    https://blog.csdn.net/zhangxiao93/article/details/50599104,这个讲的很好。

    1.this指针本质

    它是一个常量指针,只能指向一个对象,不能更改。

    2.常量对象与常量函数之间

    常量对象不能更改数据成员,this指针是指向常量的常量指针, 它不能调用非常量成员函数,是因为非常量指针不能指向常量对象。

    这个举的例子就非常好:

    int main()
    {
    //...
        A a1;
        const A a2;
        a1.func1();
        //等价于a1.func1(&a1);//ok
    
        a1.func2();
        //等价于a1.func2(&a1);//ok
    
        a2.func1();
        //等价于a2.func1(&a2);//ok
    
        a2.func2();
        //等价于a2.func2(&a2);//error
    }

     主要就是从成员函数的第一个参数是this指针角度来考虑的。

  • 相关阅读:
    视频解析小技巧
    linux系统路由设置
    tracert路由跟踪命令
    php+nginx
    docker快速拉取镜像
    linux命令
    添加docker命令
    linux模糊查询文件名
    查看日志
    模板函数与模板类
  • 原文地址:https://www.cnblogs.com/BlueBlueSea/p/13914475.html
Copyright © 2011-2022 走看看