函数声明后面的const用法 void function() const{}

来源:互联网 发布:西西软件家园 编辑:程序博客网 时间:2024/05/16 04:53

通常我们会看到一些函数声明后面会跟着一个const,这个const是做什么的呢?

看一下下面的例子,就知道了。直接在编译前,就会提示下面的两个错误

复制代码
// test1107.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include <iostream>using namespace std;class aa{    int num;public:    aa(){        int b =10;        num = b;    };    void out1(){        cout<<num<<endl;    }    void out2() const{        cout<<num<<endl;    }    void out3() const{        num+=10; //出错,const函数不能修改其数据成员        cout<<num<<endl;    }};int _tmain(int argc, _TCHAR* argv[]){    aa a1;    a1.out1();    a1.out2();    a1.out3();    const aa a2;    a2.out1(); // 错误,const的成员 不能访问非const的函数    a2.out2();    a2.out3();    return 0;}
复制代码

 

在类成员函数的声明和定义中,

const的函数不能对其数据成员进行修改操作。

const的对象,不能引用非const的成员函数。


http://www.cnblogs.com/xing901022/p/3413019.html

原创粉丝点击