`
qimo601
  • 浏览: 3446176 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

const用在成员函数后

阅读更多

const用在成员函数后   主要是针对类的const对象 
如:

 

class   Text{ 
public: 
        void   printconst(void)const  
                 {
                        cout < < "hello " < <endl;
                  } 
        void   print(void)
                  {
                        cout < < "hello " < <endl;
                   } 
private: 
        int   k; 
}; 
const   Text   a; 
//上面定义了类Text的一常量对象 
int   main(void) 
{ 
        a.printconst();   //ok 
        a.print();             //error     
        //上面a.print()调用是非法的 
        return   0; 
} 

 
 
    const对象只能调用const成员函数。 
    const对象的值不能被修改,在const成员函数中修改const对象数据成员的值是语法错误 
    在const函数中调用非const成员函数是语法错误 


分享到:
评论

相关推荐

    const修饰类的成员函数

    void f() const { // const成员函数 cout &lt;&lt; "const" ; } }; int main() { A a; // 非const对象 const A ca; // const对象 a.f(); // 调用非const成员函数 a.f(); // 重复调用,编译器可以根据上下文决定...

    const 修饰成员函数.zip

    // 可以在const成员函数中修改的标志 int value; public: MyClass() : isCached(false), value(0) {} int getValue() const { if (!isCached) { // 这里计算 value 并缓存结果 value = computeValue(); is...

    Const,Const函数,Const变量,函数后面的Const.txt

    // const成员函数 private: int m_num; }; ``` 在这里,`GetCount()`被声明为`const`成员函数,这意味着它不应该修改栈的状态,包括`m_num`等私有成员变量。 - **注意事项**: - `const`成员函数不能修改...

    C++函数后加const的意义 pdf

    ### C++中的Const成员函数详解 #### 一、Const成员函数的基本概念 在C++编程中,`const`关键字有着非常重要的作用。特别是在类的成员函数中,`const`关键字可以用来表明某个成员函数不会修改类的数据成员。这种...

    C++成员函数后的const

    以下的每一点会给出代码示例说明  一、c++成员函数后的const有以下特点: ...  二、另外,const对象与const成员函数相关的内容  1.由const 类名构造的对象只能调用 const方法  2.const对象的构

    const成员函数、初始化列表、static成员1

    const 成员函数可以在const 对象上被调用,但不能在非const 对象上被调用。const 成员函数的返回值也可以是const的,以确保返回值不被修改。 在代码中,我们可以看到一个示例: ```cpp class Testclass { public: ...

    普通成员函数、类成员函数和类静态成员函数实例(VS2010)

    在const成员函数中,`this`指针被隐式地声明为常量类型,防止修改对象。例如: ```cpp class MyClass { public: void constMemberFunction() const { // 只能读取成员变量,不能修改 std::cout ; } private...

    虚函数与const指针

    虚函数的作用是实现动态联编,也就是在程序的运行阶段动态地选择合适的成员函数。在定义了虚函数后,可以在基类的派生类中对虚函数重新定义,在派生类中重新定义的函数应与虚函数具有相同的形参个数和形参类型,以...

    C++的const类成员函数

    4. **const成员函数与非const成员函数的重载** - 同一函数名可以有const和非const两个版本,它们具有相同的参数列表,根据对象是否是const来决定调用哪个版本。如`class Screen`的`get`函数,对const对象调用`get`...

    C++ 中const对象与const成员函数的实例详解

    在C++编程语言中,`const`关键字用于修饰变量、函数参数、返回类型以及成员函数。本篇将深入探讨`const`对象与`const`成员函数的概念及其在实际编程中的应用。 1. `const`对象: `const`关键字用于声明一个不可变的...

    使用const提高函数的健壮性

    这可以确保在不改变对象状态的情况下安全地调用const成员函数。 在使用引用传递参数时,通过const修饰引用参数,可以避免函数内部修改参数的值,这对于不希望修改传入参数的场景特别有用。此外,通过const引用...

    C++ const使用详解

    在成员函数中使用 const 关键字可以限定该函数不能修改对象的数据成员。例如:`void print(int i) const;` 这里面的 const 表示该函数不能修改对象的数据成员。 需要注意的是,const 是函数类型的一个组成部分,...

    类的static,const,static const,const static成员的初始化

    经过查阅相关资料和做了相关实验后,我们确认了只要用 static 关键字修饰的成员的初始化方式和只有 static 关键字修饰的成员一样,都必须在类体外初始化,而无论 static 在 const 前面还是后面。 例如: ```cpp ...

    C语言中const使用说明

    // const成员函数,不会修改对象状态 }; ``` 7. `const`与内存区域 在C++中,`const`变量通常存储在只读内存区域,试图修改`const`变量会引发运行时错误。然而,对于非`const`变量,即使声明为`const`,如果通过...

    Const资料整理

    解决该错误的方法是,在 Const 成员函数中加上 Mutable 修饰符,以便 Const 成员函数可以修改对象的状态。 例如:`mutable int x;` 6. 使用 Const 的优点 使用 Const 可以提高程序的健壮性,防止意外的变动。...

    C++关于Const使用

    #### 二、Const成员函数 在给定的例子中,`int getx() const { return x; };` 是一个典型的`const`成员函数的示例。这里的`const`关键字有两个主要的作用: 1. **确保成员函数不修改任何数据成员**: - 当一个...

    const T vs. T const

    在C++中,const的用法更为灵活,可以用来修饰类的成员函数,使其成为常量成员函数,保证不会修改类的数据成员。 现在我们回到const T vs. T const的问题。当我们声明一个指针变量时,const关键字的位置不同,其含义...

    c++ demo,运算符重载,成员函数的实现

    在C++中,当我们对自定义类型(如类或结构体)使用运算符时,编译器会寻找与该运算符相关的成员函数或友元函数。这些函数定义了运算符的行为,使得我们可以像操作内置类型一样操作自定义类型。例如,如果我们有一个...

Global site tag (gtag.js) - Google Analytics