Fork me on GitHub

bool operator==(const Array&)const; 这最后一个const 是做什么用的

  字符重载也是个函数,在函数末尾加CONST 这样的函数叫常成员函数。常成员函数可以理解为是一个“只读”函数,它既不能更改数据成员的值,也不能调用那些能引起数据成员值变化的成员函数,只能调用const成员函数。

  第一个保证显式调用不被修改, 第二个保证隐式调用不被修改。

  const 放在最后的成员函数叫常函数,此const用来防止在此函数中修改此类的成员数据。如果修改了,编译出错。就是这个重载不能改变你引用(Array&)这个变量。

  如:

1 void(int& num=5) const
2 {
3   num=10;  //编译出错
4 }
posted @ 2016-06-04 21:58  wangduo  阅读(753)  评论(0编辑  收藏  举报