sinccceeee
sinccceeee
采纳率100%
2015-12-03 09:15 阅读 1.7k

C++类中函数+const是什么意思,

class twopoint{
protected:
double x,y;
public:
twopoint(double i,double j):x(i),y(j){

}
void setX(double NewX) {
    x=NewX;
}
void setY(double NewY){
    y=NewY;
}
double getX()const{return x;}
double getY()const{return y;}

};
最后两行的 double getX()const{return x;},double getY()const{return y;},那个const有什么作用的,书本没提到。。

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

4条回答 默认 最新

  • 已采纳
    qq_33240537 qq_33240537 2015-12-03 09:20

    const修饰变量的时候,表示该变量是常量,也就是不可以改变的变量。
    当const放在成员函数"尾巴"上修饰成员函数时,则该成员函数被称为“常成员函数”,表示该成员函数不可以修改类的成员变量,这是为了保护类的成员变量不被修改。

    点赞 1 评论 复制链接分享
  • John_ToString John_ToString 2015-12-04 01:49

    const修饰变量的时候,表示该变量是常量,也就是不可以改变的变量。
    当const放在成员函数"尾巴"上修饰成员函数时,则该成员函数被称为“常成员函数”,表示该成员函数不可以修改类的成员变量,这是为了保护类的成员变量不被修改。

    点赞 评论 复制链接分享
  • u011273862 C209 2015-12-04 09:04

    const放在前面用于修饰变量是常量,这个你应该明白了。而const放在类的成员函数的参数列表之后,表示这是一个const成员函数,调用类成员函数时是与类的对象有关的,所以实际上调用成员函数时还有一个隐式传递的参数,即调用该函数的对象的指针――this指针,在成员函数体内可以直接使用这个this指针。而我们知道,对象可以是const的,就像第一种形式那样。此时指向该调用对象的指针自然就是“指向const变量的指针”,即const T* p。那么这里成员函数后面的const的作用也就明了了,它是修饰this指针,表示它是指向常量对象的指针。注意区别常量指针与指向常量的指针

    点赞 评论 复制链接分享
  • qq_28768929 A丶Knight 2015-12-06 06:47

    表示该函数不会改变任何变量的值,如果在实现的时候不小心改变了某个变量的值,编译器会报错

    点赞 评论 复制链接分享

相关推荐