您的位置:首页 > 其它

一个函数名后面加const表示什么意思

2014-05-05 22:04 405 查看
FROM:http://blog.sina.com.cn/s/blog_74cf26810100swj5.html

const用在成员函数后 主要是针对类的const对象

如:

class Text{

public:

void printconst(void)const{cout<<"hello"<<endl;}

void print(void){cout<<"hello"<<endl;}

private:

int k;

};

const Text a;

//上面定义了类Text的一常量对象

int main(void)

{

a.printconst(); //ok

a.print(); //error

//上面a.print()调用是非法的

return 0;

}

const对象只能调用const成员函数。

const对象的值不能被修改,在const成员函数中修改const对象数据成员的值是语法错误

在const函数中调用非const成员函数是语法错误

这是把整个函数修饰为const,意思是“函数体内不能对成员数据做任何改动”。如果你声明这个类的一个const实例,那么它就只能调用有const修饰的函数。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: