C++ 中的抽象
抽象涉及只提供相關資訊給外部世界,並隱藏後臺詳細資訊。它依賴於程式設計中的介面和實現分離。
類在 C++ 中提供了抽象。它們為外部世界提供了用於操作資料的公共方法,並將類的其餘結構保留給自己。因此,使用者可以在不知道類如何在內部實現的情況下,根據需要使用該類。
以下是使用類在 C++ 中實現抽象的程式。
示例
#include <iostream>
using namespace std;
class Abstraction {
private:
int length, breadth;
public:
void setValues(int l, int b) {
length = l;
breadth = b;
}
void calcArea() {
cout<<"Length = " << length << endl;
cout<<"Breadth = " << breadth << endl;
cout<<"Area = " << length*breadth << endl;
}
};
int main() {
Abstraction obj;
obj.setValues(5, 20);
obj.calcArea();
return 0;
}輸出
Length = 5 Breadth = 20 Area = 100
在上面的程式中,Abstraction 類中的 length 和 breadth 是私有變數。有公共函式初始化這些變數,並透過乘以 length 和 depth 來計算面積。因此,此類演示了抽象。該程式碼片段如下所示。
class Abstraction {
private:
int length, breadth;
public:
void setValues(int l, int b) {
length = l;
breadth = b;
}
void calcArea() {
cout<<"Length = " << length << endl;
cout<<"Breadth = " << breadth << endl;
cout<<"Area = " << length*breadth << endl;
}
};在 main() 函式中,首先定義型別為 Abstraction 的物件。然後,使用值 5 和 20 呼叫函式 setValues()。最後,使用函式 calcArea() 顯示這些值和麵積。該程式碼片段如下所示。
Abstraction obj; obj.setValues(5, 20); obj.calcArea();
廣告
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式語言
C++
C#
MongoDB
MySQL
JavaScript
PHP