首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> C++ >> C++ 入門

C++ 資料封裝:存取控制、資料隱藏與設計策略

     編輯:C++ 入門

C++ 資料封裝

C++ 程式兩大要素:程式陳述式(函式)與程式資料。封裝將資料與操作資料的函式綁定,避免外界干擾誤用,衍生出資料隱藏概念。

  • 資料封裝:資料與函式捆綁機制
  • 資料抽象:僅暴露介面、隱藏實作細節機制

C++ 透過 class 的 public、protected、private 實作封裝。預設成員為 private。

封裝範例

class Box {
public:
    double getVolume() { return length * breadth * height; }
private:
    double length, breadth, height;  // 僅類別內部可存取
};

若需對外公開,於成員前加 public。將類別宣告為 friend 會暴露實作細節,降低封裝性,理想做法是盡可能隱藏實作。

資料封裝完整範例

#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:
    int total;  // 隱藏資料
};

int main() {
    Adder a;
    a.addNum(10); a.addNum(20); a.addNum(30);
    cout << "Total " << a.getTotal() << endl;  // 60
    return 0;
}

設計策略

成員預設設為 private,除非確實需要公開。此原則適用於資料成員、虛擬函式等所有成員,確保良好封裝性。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved