zoukankan      html  css  js  c++  java
  • C++函数后面加const修饰

    声明一个成员函数的时候用const关键字是用来说明这个函数是 "只读(read-only)"函数,也就是说明这个函数不会修改任何数据成员(object)。 为了声明一个const成员函数, 把const关键字放在函数括号的后面。声明和定义的时候都应该放const关键字。

    任何不会修改数据成员的函数都应该声明为const类型。如果在编写const成员函数时,不慎修改了数据成员,或者调用了其它非const成员函数,编译器将指出错误,这无疑会提高程序的健壮性

    复制代码
    #include<iostream>
    using namespace std;
    class temp
    {
    public:
        temp(int age);
        int getAge() const;
        void setNum(int num);
    private:
        int age;
    };
    
    temp::temp(int age)
    {
        this->age = age;
    }
    
    int temp::getAge() const
    {
        age+=10; // #Error...error C2166: l-value specifies const object #
        return age;
    }
    
    void main()
    {
        temp a(22);
        cout << "age= " << a.getAge() << endl;
    }
    复制代码

    因为声明了const函数,所以不可以修改任何数据成员,但是在这里给age数据成员加了10, 所以产生错误。


    来自:http://www.cnblogs.com/VIPler/p/4318521.html

  • 相关阅读:
    Linux内核配置过程
    Linux内核最顶层文档
    LeetCode 11月第2周题目汇总
    Chapter0
    序列加法的讨论
    ch2-基本工具介绍
    ch1-数据科学概述
    在Linux下制作Linux&windows启动盘
    VMware Workstation 与 Device/Credential Guard 不兼容?
    Linux mint 19.3配置CUDA+安装Tensorflow
  • 原文地址:https://www.cnblogs.com/chz-blogs/p/9381036.html
Copyright © 2011-2022 走看看