c++ const作用是什么

avatar
作者
筋斗云
阅读量:0

在C++中,const关键字主要有以下几个作用:

  1. 声明常量:使用const可以声明一个常量,表示该变量的值在程序运行过程中不能被修改。例如:

    const int kConstantValue = 42; 

    在这里,kConstantValue是一个常量,其值在编译时确定并且不能被修改。

  2. 保护数据成员:在类中,使用const可以保护数据成员,防止在类的成员函数中被意外修改。例如:

    class MyClass { public:     void SetValue(int value) {         value_ = value;     }      int GetValue() const {         return value_;     }  private:     int value_; }; 

    在这个例子中,GetValue()函数被声明为const,这意味着在这个函数内部不能修改类的任何数据成员(除非它们被声明为mutable)。

  3. 函数重载const可以用于函数重载。通过在成员函数的声明后添加const关键字,可以创建一个只能在常量对象上调用的函数版本。例如:

    class MyClass { public:     void Print() {         std::cout << "Non-const version"<< std::endl;     }      void Print() const {         std::cout << "Const version"<< std::endl;     } }; 

    在这个例子中,MyClass类有两个名为Print的重载函数,一个是非const版本,另一个是const版本。当在非const对象上调用Print时,将调用非const版本;当在const对象上调用Print时,将调用const版本。

  4. 指针和引用const还可以用于限制指针或引用的修改。例如:

    • const int* p:指向常量的指针,不能通过p修改所指向的值。
    • int* const p:常量指针,不能修改p的值,但可以通过p修改所指向的值。
    • const int* const p:指向常量的常量指针,既不能修改p的值,也不能通过p修改所指向的值。
    • const int& r:常量引用,不能通过r修改所引用的值。

总之,const关键字在C++中主要用于声明常量、保护数据成员、实现函数重载以及限制指针和引用的修改。这些用法有助于提高代码的安全性和可读性。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!