Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Lập Trình C

Khác biệt giữa C và C++

Một số khác biệt chính:

  • Mối quan hệ: C là subset của C++ (gần như). Code C hợp lệ thường biên dịch được trên C++.
  • Paradigm: C — thủ tục (procedural). C++ — hướng đối tượng (OOP) + generic + thủ tục.
  • Khối xây dựng cơ bản: C dùng hàm. C++ dùng đối tượng (class/struct).
  • Tham chiếu biến: C không có reference (&). C++ có.
  • Quản lý bộ nhớ: C dùng malloc/free. C++ dùng new/delete (và smart pointer, RAII).
  • Xử lý lỗi: C không có cơ chế chuẩn (dùng mã trả về, errno). C++ có exception handling (try/catch/throw).
  • Nạp chồng (Overloading): C không hỗ trợ nạp chồng hàm/toán tử. C++ hỗ trợ cả hai.
  • Lập trình generic: C không có. C++ có template.
  • Namespace: C không có. C++ có namespace tránh xung đột tên.
  • Boolean: C99 có _Bool/<stdbool.h>. C++ có boolbuiltin.
  • Struct: C struct chỉ chứa dữ liệu. C++ struct = class (mặc định public), có thể có method, constructor, inheritance.