现在的位置: 首页 > 综合 > 正文

const

2013年01月30日 ⁄ 综合 ⁄ 共 849字 ⁄ 字号 评论关闭

 在C++中为了实现共有数据的保护和共享,我们可以使用CONST,就是把有关的数据定义为常量。我们可以在定义对象时指定对象为常对象,当然常对象是要有初始值的。如:Time   const ti(10,20,30);这时ti的所有的成员的值都不能被修改,这样给了我们一个很有用的东西:凡是我们希望数据成员不被修改的对象我们就可以设定为常对象。下面给出常对象的定义的一般的方法:

                                          类名   const   对象名(参数列表);

                                          const    类名 对象名(参数列表);

     如果一个对象被声明为常对象,则不能 调用这个对象的非const型的成员函数。其中当然除去自动调用的构造函数和析构函数。这时我们可以使用定义常成员函数来访问对象中的数据成员。有时在我们的编程中可能要定义一些常对象的数据是可以改变的,这时我们可以把它的这个数据定义为:mutable,,如:mutable   int count; 这时就把count声明为了可变的数据成员。这样就可以用声明为const的成员函数来修改它的值。  

      常对象成员:在我们的类的定义中可以把对象的成员声明为const,这些包括常数据成员和常函数成员。先说明一下常数据成员吧,它的值 是不能改变的,只有通过构造函数的参数初始化表对常数据成员进行初始化,所有涉及对常数据成员赋值的操作都是不正确的,其中当然包括在构造函数中的赋值操作。

     常成员函数:如果成员函数被声明为常成员函数则只能引用本类中的数据成员,而不能去个性它们,例如只能用于数据的输出等。如下:void   get_Time() const; 其中的const是我们的函数的一部分,我们在函数的声明 和定义的时候都应该加上他。而在调用的时候不用加。常成员函数可以引用常数据成员,也可以引用一般的数据成员。常成员函数不能调用另一个非常成员函数。

抱歉!评论已关闭.