Computer >> Máy Tính >  >> Lập trình >> C ++

Đóng gói trong C ++

Tính năng đóng gói tập hợp dữ liệu và các phương pháp thao tác dữ liệu thành một thành phần duy nhất và bảo vệ chúng khỏi sự can thiệp từ bên ngoài. Về bản chất, đóng gói liên quan đến việc đóng gói dữ liệu cũng như các chức năng sử dụng dữ liệu. Tính năng đóng gói dữ liệu dẫn đến khái niệm ẩn dữ liệu rất quan trọng.

Đóng gói trong C ++ được thực hiện bằng cách sử dụng các lớp là kiểu dữ liệu do người dùng định nghĩa. Các lớp này chứa các kiểu dữ liệu cũng như các phương thức được liên kết với nhau.

Một chương trình đại diện cho sự đóng gói trong C ++ sử dụng các lớp được đưa ra như sau.

Ví dụ

#include <iostream>
using namespace std;
class EncapsulationDemo {
   private:
   int length, breath, height;
   public:
   void setValues(int l, int b,int h) {
      length = l;
      breath = b;
      height = h;
   }
   void calcVolume() {
      cout<<"Length = " << length << endl;
      cout<<"Breath = " << breath << endl;
      cout<<"Height = " << height << endl;
      cout<<"Volume = " << length*breath*height << endl;
   }
};
int main() {
   EncapsulationDemo obj;
   obj.setValues(5, 3, 2);
   obj.calcVolume();
   return 0;
}

Đầu ra

Length = 5
Breath = 3
Height = 2
Volume = 30

Trong chương trình trên, các biến và phương thức được gói trong một đơn vị duy nhất, tức là Đóng gói lớp. Vì vậy, chương trình này trình bày khái niệm đóng gói.

Chiều dài, chiều rộng và chiều cao trong Đóng gói lớp là các biến riêng. Có những hàm công khai khởi tạo các biến này và cũng tính toán khối lượng bằng cách nhân chiều dài, chiều rộng và chiều cao. Đoạn mã cho điều này như sau.

class Encapsulation {
   private:
   int length, breadth, height;
   public:
   void setValues(int l, int b,int h) {
      length = l;
      breadth = b;
      height = h;
   }
   void calcVolume() {
      cout<<"Length = " << length << endl;
      cout<<"Breadth = " << breadth << endl;
      cout<<"Height = " << height << endl;
      cout<<"Volume = " << length*breadth*height << endl;
   }
};

Trong hàm main (), đầu tiên một đối tượng kiểu Encapsulation được định nghĩa. Sau đó, hàm setValues ​​() được gọi với các giá trị 5, 3 và 2. Cuối cùng, các giá trị này và khối lượng được hiển thị bằng cách sử dụng hàm calcVolume (). Đoạn mã cho điều này như sau.

Encapsulation obj;
obj.setValues(5, 3, 2);
obj.calcVolume();