Sự khác biệt chính: C ++ là một ngôn ngữ hướng đối tượng, chủ yếu tập trung vào các đối tượng. Một lớp trong C ++ có thể được định nghĩa là một tập hợp các biến và hàm liên quan được gói gọn trong một cấu trúc duy nhất. Trường hợp của lớp được gọi là đối tượng. Một cấu trúc trong C ++ có thể được gọi là kiểu dữ liệu do người dùng định nghĩa sở hữu các hoạt động riêng của nó. Không giống như trong ngôn ngữ C, cả hai đều khá giống nhau trong C ++. Sự khác biệt chính tồn tại giữa chúng là về công cụ sửa đổi truy cập; các thành viên của một lớp là riêng tư theo mặc định, trong khi các thành viên của một cấu trúc được công khai theo mặc định.
Một lớp trong C ++ chỉ là một phần mở rộng của cấu trúc được sử dụng trong ngôn ngữ C. Nó là một kiểu dữ liệu do người dùng định nghĩa. Nó thực sự liên kết dữ liệu và các chức năng liên quan của nó trong một đơn vị. Một cấu trúc và một lớp trong ngôn ngữ C khác nhau rất nhiều vì một cấu trúc có chức năng và tính năng hạn chế so với một lớp. Mặt khác, cấu trúc và lớp trong C ++ khá giống nhau. Sự khác biệt chính phát sinh do theo mặc định, tất cả các thành viên của một lớp là riêng tư, trong khi theo mặc định tất cả các thành viên của một cấu trúc là công khai.
So sánh giữa Class và Cấu trúc trong C ++:
Lớp học | Kết cấu | |
Định nghĩa | Một lớp trong C ++ có thể được định nghĩa là một tập hợp các biến và hàm liên quan được gói gọn trong một cấu trúc duy nhất. | Một cấu trúc có thể được gọi là kiểu dữ liệu do người dùng xác định sở hữu các hoạt động riêng của nó. |
Từ khóa để khai báo | Lớp học | Cấu trúc |
Trình xác định truy cập mặc định | Riêng tư | Công cộng |
Thí dụ | lớp học của tôi { riêng tư: dữ liệu int; công cộng: mygroup (int data_): dữ liệu (dữ liệu_) {} khoảng trống ảo foo () = 0; ảo ~ lớp () {} }; | cấu trúc lớp của tôi { riêng tư: dữ liệu int; công cộng: mygroup (int data_): dữ liệu (dữ liệu_) {} khoảng trống ảo foo () = 0; ảo ~ lớp () {} }; |
Mục đích | Trừu tượng dữ liệu và kế thừa | Nói chung, nhóm dữ liệu |
Kiểu | Tài liệu tham khảo | Giá trị |
Sử dụng | Thường được sử dụng cho số lượng lớn dữ liệu. | Thường được sử dụng cho số lượng dữ liệu nhỏ hơn. |