米鼠商城

多块好省,买软件就上米鼠网

最新项目

人才服务

靠谱的IT人才垂直招聘平台

c++数据抽象

  • lkj155
  • 2
  • 2020-03-26 11:20

什么叫数据抽象?

比如说一架飞机,我们知道它会飞,但是怎么飞、飞行原理我们并不清楚。 因此,我们可以说飞机把它的内部实现和外部接口分离开了,我们无需知道它的内部实现原理,直接通过它的外部接口(机票)就可以登机起飞。

就 C++ 编程而言,C++ 类为数据抽象提供了可能。它们向外界提供了大量用于操作对象数据的公共方法,也就是说,外界实际上并不清楚类的内部实现。 例如,您的程序可以调用abs() 函数,而不需要知道函数中区整数绝对值所用到的算法。实际上,函数的底层实现会因库的版本不同而有所差异,只要接口不变,函数调用就可以照常工作。

在 C++ 中,我们使用类来定义我们自己的抽象数据类型(ADT)。您可以使用类 iostream 的 cout 对象来输出数据到标准输出,如下所示:

#include<iostream>
using namespace std;
int main() {
	cout << "Hello EIDorado" << endl;
	return 0;
}

我们并不知道也不需要知道cout的工作原理,只需要知道cout这个公共接口就可以使用,底层实现不需要去关注太多。

数据抽象的好处

类的内部受到保护,不会因无意的用户级错误导致对象状态受损。 类实现可能随着时间的推移而发生变化,以便应对不断变化的需求,或者应对那些要求不改变用户级代码的错误报告。

下面我们来看一下抽象类型怎么写

#include <iostream>
using namespace std;
 
class Adder{
   public:
      // 构造函数
      Adder(int i = 0)
      {
        total = i;
      }
      // 对外的接口
      void addNum(int number)
      {
          total += number;
      }
      // 对外的接口
      int getTotal()
      {
          return total;
      };
   private:
      // 用户并不清楚有total这块内存,这是用户不需要了解的,但又是类能正常工作所必需的。
      int total;
};
int main( )
{
   Adder a;
   
   a.addNum(10);
   a.addNum(20);
   a.addNum(30);
 
   cout << "Total " << a.getTotal() <<endl;
   return 0;
}



这里给大家推荐一个在线软件复杂项交易平台:米鼠网 https://www.misuland.com

米鼠网自成立以来一直专注于从事软件项目人才招聘软件商城等,始终秉承“专业的服务,易用的产品”的经营理念,以“提供高品质的服务、满足客户的需求、携手共创双赢”为企业目标,为中国境内企业提供国际化、专业化、个性化、的软件项目解决方案,我司拥有一流的项目经理团队,具备过硬的软件项目设计和实施能力,为全国不同行业客户提供优质的产品和服务,得到了客户的广泛赞誉。

猜你喜欢

评论留言