Các dạng kế thừa là:
Trả lời:
Đáp án đúng: B
Trong lập trình hướng đối tượng, đặc biệt là trong C++, có ba kiểu kế thừa chính: `private`, `public`, và `protected`.
* **Public:** Khi một lớp kế thừa từ một lớp khác theo kiểu `public`, các thành viên `public` của lớp cơ sở vẫn là `public` trong lớp dẫn xuất, các thành viên `protected` của lớp cơ sở vẫn là `protected` trong lớp dẫn xuất. Các thành viên `private` của lớp cơ sở không thể truy cập trực tiếp từ lớp dẫn xuất.
* **Protected:** Khi một lớp kế thừa từ một lớp khác theo kiểu `protected`, các thành viên `public` và `protected` của lớp cơ sở trở thành `protected` trong lớp dẫn xuất. Các thành viên `private` của lớp cơ sở không thể truy cập trực tiếp từ lớp dẫn xuất.
* **Private:** Khi một lớp kế thừa từ một lớp khác theo kiểu `private`, tất cả các thành viên `public` và `protected` của lớp cơ sở trở thành `private` trong lớp dẫn xuất. Các thành viên `private` của lớp cơ sở không thể truy cập trực tiếp từ lớp dẫn xuất.
Như vậy, đáp án chính xác là "Private, public, protected".