C++教程
C++控制语句
C++函数
C++数组
C++指针
C++对象
C++继承
C++多态
C++抽象
C++常用
C++ STL教程
C++迭代器
C++程序

C++ 数据抽象

数据抽象是仅向外界提供基本细节并隐藏内部细节(即仅表示程序中的基本细节)的过程。 数据抽象是一种编程技术,它依赖于接口的分隔和程序的实现细节。 让我们以一个现实生活中的交流电为例,该交流电可以打开或关闭,更改温度,更改模式以及其他外部组件(如风扇,摆轮)。但是,我们不知道AC的内部细节,即AC内部如何工作。因此,可以说,AC将实现细节与外部接口分开。 C++提供了很高的抽象水平。例如,pow()函数用于计算数字的幂而不知道该函数遵循的算法。
在C++程序中,如果我们使用私有成员和公共成员来实现类,那么它就是数据抽象的示例。
数据抽象可以通过两种方式实现:
使用类的抽象 头文件中的抽象。 C++中的数据抽象
使用类的抽象: 抽象可以使用类实现。一个类用于通过使用访问说明符将所有数据成员和成员函数分组为一个单元。类负责确定哪个数据成员在外部可见,哪些在外部不可见。
头文件中的抽象: 另一种类型的抽象是头文件。例如,可用的pow()函数用于计算数字的幂而不实际知道哪个算法函数用于计算幂。因此,可以说头文件对用户隐藏了所有实现细节。
访问说明实现抽象:
公共说明符: 将成员声明为公共成员后,可以从程序的任何位置访问成员。 私有说明符: 将成员声明为私有成员时,只能由该类的成员函数访问成员。
我们来看一个简单的头文件抽象示例。
//用于计算数字幂的程序。
#include <iostream>
#include<math.h>
using namespace std;
int main()
{  
 int n = 4;
   int power = 3;
   int result = pow(n,power);         // pow(n,power) is the  power function
   std::cout << "Cube of n is : " <<result<< std::endl;
   return 0;
}
输出:
Cube of n is : 64
在上面的示例中,pow()函数用于计算4的幂3、pow()函数存在于math.h头文件中,其中pow()函数的所有实现细节隐藏。
让我们看一个使用类进行数据抽象的简单示例。
#include <iostream>  
using namespace std;  
 class Sum  
{  
private: int x, y, z; // private variables
public:  
void add()  
{  
cout<<"Enter two numbers: ";  
cin>>x>>y;  
z= x+y;  
cout<<"Sum of two number is: "<<z<<endl;  
}  
};  
int main()  
{  
Sum sm;  
sm.add();  
return 0;  
}  
输出:
Enter two numbers:
3
6
Sum of two number is: 9
在上面的示例中,使用类实现了抽象。类" Sum"包含私有成员x,y和z,只能由该类的成员函数访问。

抽象的优点:

该类的实现详细信息受到保护,不会受到用户级别错误的影响。 程序员无需编写底层代码。 数据抽象避免了代码重复,即程序员不必每次都执行相同的任务来执行类似的操作。 数据抽象的主要目的是重用代码并在类之间对代码进行适当的分区。 可以在不影响用户级别代码的情况下更改内部实现。
昵称: 邮箱:
Copyright © 2022 立地货 All Rights Reserved.
备案号:京ICP备14037608号-4