c++封装

作者: showaichuan | 来源:发表于2017-08-10 10:29 被阅读0次

什么是封装

封装面向对象编程中的把数据和操作数据的函数绑定在一起的一个概念,这样能避免受到外界的干扰和误用,从而确保了安全。
C++ 通过创建类来支持封装。

数据成员&成员函数:构成精彩而完整的类

类的定义,以dog类为例:

class Dog
{
    public:
           //数据成员(属性)
          string m_strName;
          int m_iAge;
          //成员函数(方法)
          void speak();
          void run();
}

注意:Dog类中并不包含狗的全部信息,而是针对不同目的抽象出不同的信息。
访问限定符:
public:希望暴露的信息用public限定
private:希望隐藏的信息用private限定
protected:

构造函数&析构函数:描述对象的生生死死

实例化对象有两种方式:

  • 从栈中实例化
    对上述Dog类进行实例化并访问类的数据成员:
int main()
{
      Dog  dog;//使用完后系统会自动释放内存
      dog.m_strName = "二哈";//对象成员的访问
      dog.run();
      Dog  dog[4];
      return 0;
}
  • 从堆中实例化
    同样对上述Dog类进行实例化并访问类的数据成员:
int main()
{
      Dog  *p = new Dog();//new运算符申请一段内存
      Dog  *p = new Dog[4];
      //对象数组对数据成员的访问,用循环
     for (int i = 0; i < 4; i++)
{
    p[i]->run();
}
      p->m_strName = "二哈";
      p->run();
      //从堆中实例化对象后一定要记得释放内存
      delete p;
     p = NULL;
      delete  [] p;
      return 0;
}

对象复制&对象赋值:使类的定义充满意义

对象数组&对象指针:将应用形态发挥的淋漓尽致

this指针:

相关文章

  • C++知识点

    C++基本方法: C++ memcpy C++基本特性: C++引用(vs指针) C++指针 C++封装: 将...

  • 慕课网-C++远征之封装篇(下)-学习笔记

    C++远征之封装篇(下) c++封装概述 类 & 对象 对象+数据成员 = 对象成员 对象 + 数组 = 对象数组...

  • cpp1 封装和this指针

    Cpp1 封装和this指针 封装 C语言和C++语言的区别 C++是对C的补充扩展,C原有的语法C++都支持,并...

  • 7-C++远征之封装篇[下]-学习笔记

    C++远征之封装篇(下) c++封装概述 下半篇依然围绕类 & 对象进行展开 将原本学过的简单元素融合成复杂的新知...

  • c++ list, vector, map, set 区别与用法

    c++ list, vector, map, set 区别与用法比较 List封装了链表,Vector封装了数组,...

  • C++的多态

    C++三大特性:封装、继承和多态。其中最好理解的就是封装了,继承作为C++面向对象的特征也不难理解,那么多态,应该...

  • STL标准模板库

    阅读须知: C++语言实现了自定义模板,大家可以自己封装模板. 同样,C++的大牛们已经自己封装了模板库,类似于系...

  • C++ 封装

    Teacher.h Teacher.cpp 初始化Teacher类 构造函数 和 析构函数

  • c++封装

    什么是封装 封装是面向对象编程中的把数据和操作数据的函数绑定在一起的一个概念,这样能避免受到外界的干扰和误用,从而...

  • C++封装

    1.C++内存分区 1.在了解构造函数之前先弄清楚C++相关的内存分区内容 1.栈区:在定义一个变量或指针时开辟的...

网友评论

      本文标题:c++封装

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