C++ được xem là ngôn ngữ middle-level (trung cấp), kết hợp đặc điểm high-level và low-level. Nó là superset của C – hầu hết chương trình C hợp lệ đều là C++ hợp lệ. C++ chạy trên Windows, macOS, UNIX/Linux. Dưới đây là các đặc điểm nổi bật:
Các tính năng chính
- Multi-paradigm (đa mô hình): Hỗ trợ lập trình thủ tục (procedural), hướng đối tượng (OOP), generic (template). Rất linh hoạt.
- Con trỏ & tham chiếu (pointers & references): Truy cập bộ nhớ trực tiếp, kiểm soát hoàn toàn – phù hợp low-level và dự án phức tạp.
- Statically Typed (kiểu tĩnh): Kiểu biến xác định tại compile-time. Compiler bắt lỗi sớm, nhiều bug vặt bị chặn ngay.
- Operator Overloading: Định nghĩa lại toán tử cho kiểu tự định nghĩa, dùng kiểu phức tạp như kiểu dựng sẵn.
- Interface qua Abstract Class: Mô tả hành vi/class không cam kết implementation. Dùng abstract class (khác với data abstraction).
- Multiple Inheritance: Class kế thừa từ nhiều class. Constructor gọi theo thứ tự kế thừa, destructor ngược lại. Mô hình hóa thực tế dễ dàng.
- Ternary operator as lvalue:
(cond ? a : b) = value;– gán vào kết quả toán tử 3 ngôi. - Auto type deduction (C++11):
autosuy diễn kiểu tự động, giảm boilerplate.
C++ còn có nhiều tính năng khác: template metaprogramming, RAII, smart pointers, move semantics (C++11), concepts (C++20), modules (C++20), coroutines (C++20), v.v. Xem tài liệu chính thức để khám phá thêm!