C++类中的const成员变量和const成员函数

下面通过例子说明

cpp 复制代码
#include <iostream>

class Example {
public:
    const int constVar = 42; // 常量成员
    int Var = 1; // 普通变量

    void normalFunction() {
        std::cout << "Accessing constVar in normalFunction: " << constVar << std::endl;
        Var++;
        std::cout << "Modifying Var in normalFunction: " << Var << std::endl;
    }

    void constFunction() const {
        std::cout << "Modifying Var in constFunction: " << constVar << std::endl;
        //Var++;   // const函数不能修改变量
        std::cout << "Modifying Var in constFunction: " << Var << std::endl;
    }
};

int main() {
    Example ex;
    ex.normalFunction(); // 访问常量
    ex.constFunction();  // 访问常量
    return 0;
}

成员函数的 const 修饰符 :当在类中定义成员函数并将其标记为 const 时,它表示该函数不会修改类的成员变量。也就是说,在 const 成员函数中,不能修改任何非 const 的成员变量,但仍然可以访问各种成员变量。

相关推荐
朝新_3 分钟前
【多线程初阶】阻塞队列 & 生产者消费者模型
java·开发语言·javaee
立莹Sir5 分钟前
Calendar类日期设置进位问题
java·开发语言
木子.李3471 小时前
排序算法总结(C++)
c++·算法·排序算法
风逸hhh1 小时前
python打卡day46@浙大疏锦行
开发语言·python
火兮明兮1 小时前
Python训练第四十三天
开发语言·python
闪电麦坤952 小时前
数据结构:递归的种类(Types of Recursion)
数据结构·算法
freyazzr2 小时前
C++八股 | Day2 | atom/函数指针/指针函数/struct、Class/静态局部变量、局部变量、全局变量/强制类型转换
c++
ascarl20102 小时前
准确--k8s cgroup问题排查
java·开发语言
Gyoku Mint3 小时前
机器学习×第二卷:概念下篇——她不再只是模仿,而是开始决定怎么靠近你
人工智能·python·算法·机器学习·pandas·ai编程·matplotlib
纪元A梦3 小时前
分布式拜占庭容错算法——PBFT算法深度解析
java·分布式·算法