美文网首页
C++中类的封装

C++中类的封装

作者: nethanhan | 来源:发表于2017-10-14 10:26 被阅读0次

    类的封装


    • 类通常分为以下两个部分

      • 类的实现细节
      • 类的使用方式
    • 当使用类时,不需要关心其实现细节

    • 当创建类时,才需要考虑其内部实现细节

    • 封装的基本概念

      • 并不是类的每个属性都是对外公开的
      • 而一些类的属性是对外公开的
      • 必须在类的表示法中定义属性和行为的公开级别
    • C++中类的封装

      • 成员变量:C++中用于表示类属性的变量
      • 成员函数:C++中用于表示类行为的函数
      • C++中可以给成员变量和成员函数定义访问界别
        • public
          • 成员变量和成员函数可以在类的内部和外界访问和调用
        • private
          • 成员变量和成员函数只能在类的内部被访问和调用

    类成员的作用域


    • 类成员的作用域都只在类的内部,外部无法直接访问
    • 成员函数可以直接访问成员变量和调用成员函数
    • 类的外部可以通过类变量访问public成员
    • 类成员的作用域与访问级别没有关系
    • C++中用struct定义的类中所有成员默认为public

    举个例子:

    #include <stdio.h>
    
    int i = 1;
    
    struct Test
    {
    private:
        int i;
    
    public:
        int j;
            
        int getI()
        {
            i = 3;
            
            return i;
        }
    };
    
    int main()
    {
        int i = 2;
        
        Test test;
        
        test.j = 4;
        
        printf("i = %d\n", i);              // i = 2;
        printf("::i = %d\n", ::i);          // ::i = 1;
        // printf("test.i = %d\n", test.i);    // Error
        printf("test.j = %d\n", test.j);    // test.j = 4
        printf("test.getI() = %d\n", test.getI());  // test.getI() = 3
        
        return 0;
    }
    

    相关文章

      网友评论

          本文标题:C++中类的封装

          本文链接:https://www.haomeiwen.com/subject/apdxuxtx.html