Lời gọi phương thức ảo:
Trả lời:
Đáp án đúng: C
Lời gọi phương thức ảo trong C++ cho phép thực hiện đa hình (polymorphism). Khi một phương thức được khai báo là ảo (virtual) trong lớp cơ sở (base class), nó có thể được ghi đè (override) trong các lớp con (derived classes). Khi bạn gọi một phương thức ảo thông qua con trỏ hoặc tham chiếu của lớp cơ sở, chương trình sẽ xác định phiên bản thực tế của phương thức cần gọi dựa trên kiểu thực tế của đối tượng tại thời điểm chạy (runtime), chứ không phải dựa trên kiểu của con trỏ hoặc tham chiếu. Điều này cho phép bạn xử lý các đối tượng thuộc các lớp con khác nhau một cách thống nhất thông qua con trỏ hoặc tham chiếu của lớp cơ sở.
* **A. Phải gọi thông qua con trỏ đối tượng:** Đúng. Việc gọi phương thức ảo thường được thực hiện thông qua con trỏ hoặc tham chiếu của lớp cơ sở để đạt được tính đa hình.
* **B. Không thể gọi phương thức ảo:** Sai. Phương thức ảo hoàn toàn có thể được gọi.
* **C. Gọi như phương thức thông thường:** Sai. Mặc dù cú pháp gọi có thể giống phương thức thông thường, cơ chế hoạt động khác, đặc biệt khi sử dụng con trỏ hoặc tham chiếu của lớp cơ sở.
* **D. Gọi kèm từ khóa virtual:** Sai. Từ khóa `virtual` chỉ được sử dụng khi khai báo phương thức, không phải khi gọi.
Do đó, đáp án đúng là A.