请问这个函数后面的const是什么意思啊
const double PI=3.14159; //定义圆周率为符号常量
class CCircle //定义类
{
public:
CCircle() //构造函数
{
radius = 1;
}
Virtul ~CCircle(){} //析构函数
double Area() const; //计算圆的面积
double Circumference() const; //计算圆的周长
double GetRadius() const //取得圆的半径
{ return radius; }
void SetRadius(double r) //为半径设置新值
{ radius=r>0?r:1; }
private:
double radius; //数据成员
};
上面函数中,计算圆周长,面积函数后面为何有个const,为什么不是放在前面啊?
[解决办法]
修饰函数,表示不会修改变量
[解决办法]
举个例子吧:
const Stock land =Stock("hyd");
land.show();
land 是常量,但是类成员函数show无法保证不修改land,所以编译器将拒绝执行该段代码。这需要另外一种语法,即:
void show() const;(声明) void Stock::show() const{}(定义)。
[解决办法]
[解决办法]
c++里常这么用,防止修改成员函数的变量被修改