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

C++ 類別與物件核心概念

     編輯:C++ 基礎

從結構體到類別

C 語言 struct 只能包含**資料成員**。C++ class 擴展為**資料 + 函數**的封裝單元:

// C 風格:資料與操作分離
struct Student { char* name; int age; float score; };
void display(Student s) { printf("%s %d %f\n", s.name, s.age, s.score); }

// C++ 風格:資料與操作合一
class Student {
public:
    char* name; int age; float score;
    void say() { printf("%s %d %f\n", name, age, score); }
};
  • class 關鍵字定義類別,public: 公開介面(詳見存取權限)。
  • 類別 = **使用者自訂型別**,物件 = **型別的變數/實例**。
  • 類別不佔記憶體(藍圖),物件佔記憶體(房子)。

建立與使用物件

int main() {
    Student stu;           // 建立物件(實例化)
    stu.name = "小明";     // . 存取成員
    stu.age = 15;
    stu.score = 92.5f;
    stu.say();             // 呼叫成員函數
    return 0;
}

面向物件程式設計(OOP)三大支柱

  1. 封裝:資料 private、介面 public,隱藏實現細節。
  2. 繼承:子類別復用/擴展父類別,建立「是一種」關係。
  3. 多型:基類指標/參考指向派生物件,虛擬函數動態綁定,實現「一介面多實現」。

C++ 多範式語言

  • 面向過程:函數+模組(C 風格,C++ 完全支援)。
  • 面向物件:類別+繼承+多型。
  • 泛型程式:模板(template),演算法與資料結構型別參數化(STL 核心)。

C++ 不是「非 OOP 不可」,而是**根據問題選擇最適合的範式**:小工具用面向過程,大型系統用 OOP,容器/演算法用泛型。

專案組織對比

類別增加了一層「資料與操作的邊界」,極大降低大型系統的耦合度與認知負荷。

總結

  • 類別 = 型別定義(資料+函數),物件 = 型別實例(佔記憶體)。
  • class 關鍵字,public: 公開介面,./-> 存取成員。
  • OOP 核心:封裝、繼承、多型;C++ 同時支援面向過程、泛型。
  • 理解「類別是藍圖、物件是房子」是進入 C++ 世界的第一步。
  1. 上一篇文章:
  2. 下一篇文章:
  • --热点文章
  • Copyright © 程式碼之家 All Rights Reserved
    C 專案C++ 專案
    .h 宣告函數原型
    .c 實作函數
    模組 = 一組相關函數
    .h 宣告類別
    .cpp 實作成員函數
    模組 = 一個或多個類別