那位能给小弟我讲一下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成员函数不可以对数据成员做修改
}
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成员函数不可以对数据成员做修改
}