码迷,mamicode.com
首页 > 其他好文 > 详细

const对象

时间:2016-07-10 23:13:39      阅读:288      评论:0      收藏:0      [点我收藏+]

标签:

 

常成员函数

一个const对象可以调用const函数,但不能调用非const成员函数。必须将关键字const放在函数参数表之后,才能说明该函数是一个const成员函数。

 

声明常成员函数的格式如下:

类型标识符 函数名(参数列表) const;

定义定义如下:

类型标识符 类名::函数名(参数列表) const {//函数体}

在类中定义定义如下:

类型标识符 函数名(参数列表) const {//函数体}

 

在常成员函数里,不能更新对象的数据成员,也不能调用该类中没有用const修饰的成员函数。如果将一个对象说明为常对象,则通过该对象只能调用它的const成员函数,不能调用其他成员函数。

 

//error: C3490: 由于正在通过常量对象访问“x”,因此无法对其进行修改

//error: C3490: 由于正在通过常量对象访问“y”,因此无法对其进行修改

 

加上const属性,不可修改一般的成员变量

 

1 void Dialog::getxy() const
2 {
3     this->x=900;//error: C3490: 由于正在通过常量对象访问“x”,因此无法对其进行修改
4     this->y=600;//error: C3490: 由于正在通过常量对象访问“y”,因此无法对其进行修改
5 }

 

const对象

标签:

原文地址:http://www.cnblogs.com/denggelin/p/5658672.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!