那位能给小弟我讲一下const成员函数

那位能给我讲一下const成员函数
const   BString&   getID()   const;
这是一个类成员函数  

小弟以前没用过const成员函数    
那位大侠     给我讲一下   const成员函数用法及作用

------解决方案--------------------
const BString& getID() const;
这个是一个返回值为const BString&类型的const成员函数

两个const的作用不一样

第一个是修饰返回值的,返回的是一个const BString&,也就是说,返回值不可以修改
例如
BString a,b; //定义两个对象
a.getID()=b; //a.getID()的返回值是BString类型的常引用,也就是
//一个const BString&,所以对它进行赋值,a.getID()=b,
//是非法的

第二个const是用来表示该成员函数不能修改数据成员的,例如这个类里有一个成员叫int data;
那么
const BString& getID() const
{
data++; //这是非法的,const成员函数不可以对数据成员做修改
}