Sử dụng struct
chúng tôi có thể đạt được tất cả chức năng của class
: các nhà xây dựng (có thể được sửa đổi/quá tải), hủy (có thể được sửa đổi/quá tải), quá tải nhà điều hành, phương pháp mẫu, phương pháp tĩnh, public
/private
/protected
trường/phương pháp.Tại sao chúng ta cần một `lớp` trong C++, khi một` struct` có thể được sử dụng để đạt được như vậy?
Tại sao chúng ta cần class
sau đó?
Lưu ý: Tôi không muốn câu trả lời nói rằng trong struct
, trường/phương thức là public
theo mặc định.
Tôi muốn nói đó là lý do tương thích 'lịch sử' với [tag: c]. –
Có thể thực hiện đóng gói dữ liệu, ẩn dữ liệu với cấu trúc –
Getter (accessors), setters (mutators) có một số ý nghĩa trong OOPs mà chúng ta có thể đạt được trong các lớp và không có trong cấu trúc –