C++函数名后面有个const

‌函数名后面加const表示该函数是一个常成员函数,即该函数不会修改类的任何成员变量。‌

在C++中,常成员函数通过在函数声明和定义后添加const关键字来标识。常成员函数不能修改类的任何成员变量,这保证了类的接口的稳定性。例如:

 
class Point {
public:
int GetX() const; // 常成员函数,不能修改成员变量xVal
int GetY() const; // 常成员函数,不能修改成员变量yVal
private:
int xVal, yVal;
};

在上面的例子中,GetX()GetY()都是常成员函数,因为它们不会修改xValyVal成员变量‌1。

常成员函数的用途和限制

  1. ‌用途‌:常成员函数通常用于获取类的状态信息,而不改变类的状态。例如,获取对象的属性值。
  2. ‌限制‌:常成员函数不能调用非const成员函数,因为非const成员函数可能会修改类的成员变量,这与const成员函数的定义相冲突。例如:
     
    const Point p;
    p.SetPt(1, 2); // 错误,SetPt是修改成员变量的非const成员函数
    p.GetX(); // 正确,GetX是常成员函数
    在上面的例子中,尝试使用const对象调用非const成员函数SetPt会导致编译错误,因为SetPt可能会修改对象的成员变量,而p是一个const对象,其成员变量不应被修改‌
posted @   海_纳百川  阅读(502)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
历史上的今天:
2023-11-08 OpenCV透视变换-不对原图裁剪
2023-11-08 使用pillow对图像进行旋转和添加高斯白噪声
2022-11-08 IOU计算-纯python
2022-11-08 awk强势使用方法
本站总访问量8951083
 
点击右上角即可分享
微信分享提示