Từ khóa virtual khi đứng trước một hàm nào đó thì có ý nghĩa gì?
Đáp án đúng: A
Từ khóa virtual
khi đứng trước một hàm trong C++ (và một số ngôn ngữ lập trình hướng đối tượng khác) có ý nghĩa quan trọng trong việc hiện thực tính đa hình (polymorphism). Nó cho phép một lớp con (derived class) ghi đè (override) một hàm của lớp cha (base class) và khi một đối tượng của lớp con được truy cập thông qua một con trỏ hoặc tham chiếu của lớp cha, phiên bản hàm của lớp con sẽ được gọi thay vì phiên bản của lớp cha. Điều này được gọi là "đa hình thời gian chạy" (runtime polymorphism) hay "liên kết động" (dynamic binding).
Phân tích các đáp án:
- Đáp án 1: "Xác định hàm đó sẽ chuyển thành đa dạng hình" - Đúng. Hàm virtual là cơ chế để hiện thực tính đa hình.
- Đáp án 2: "Xác định là hàm ảo" - Đúng, nhưng chưa đủ ý. Đây chỉ là cách gọi tên, chưa giải thích ý nghĩa của nó.
- Đáp án 3: "Xác định hàm sẽ được thừa kế" - Sai. Tất cả các hàm không private đều được thừa kế, virtual không liên quan đến việc có thừa kế được hay không.
- Đáp án 4: "Xác định hàm ảo sẽ được sử dụng trong lớp" - Sai. Hàm ảo được sử dụng *thông qua con trỏ hoặc tham chiếu của lớp cha*.
Như vậy, đáp án chính xác nhất là đáp án 1, vì nó thể hiện đúng bản chất và mục đích của từ khóa virtual
.
Cùng ôn thi với bộ câu hỏi trắc nghiệm môn Lập trình hướng đối tượng có đáp án mà tracnghiem.net chia sẽ dưới đây, nhằm giúp các bạn sinh viên chuyên ngành chuẩn bị cho kì thi sắp tới.
Câu hỏi liên quan

FORM.08: Bộ 130+ Biểu Mẫu Thống Kê Trong Doanh Nghiệp

FORM.07: Bộ 125+ Biểu Mẫu Báo Cáo Trong Doanh Nghiệp

FORM.06: Bộ 320+ Biểu Mẫu Hành Chính Thông Dụng

FORM.05: Bộ 330+ Biểu Mẫu Thuế - Kê Khai Thuế Mới Nhất

FORM.04: Bộ 240+ Biểu Mẫu Chứng Từ Kế Toán Thông Dụng
