Bài thực hành số 4
Mục tiêu:
–
Viết chương trình có sử dụng cơ chế tương ứng
bội (polymorphism).
–
Làm rõ các
khái niệm: hàm ảo, hàm thuần ảo
và hàm hủy ảo.
1. Cơ chế tương ứng bội (Polymorphism).
Cơ
chế
tương
ứng
bội
(
tí
nh
đa
hình)
trong
C++
là
cơ
chế
cho
phép
hành
vi
đối
tượng
có
thể
có
nhiều
thể
hiện
khác
nhau
tùy
thuộc
vào
lớp
thực
chất
mà
đối
tượng
đó
thuộc
về.
Khả
năng
cho
ph
ép
một chương
trình sau khi đã
biên dịch có
thể có
nhiều diễn biến xảy
ra là một trong những
thể hiện của
tính đa hình –
tính muôn màu muôn vẻ –
của chương trình hướng đối tượng.
Để thực hiện được tí
nh đa
hình, C++
có
cơ chế
kết nối
động (dynamic binding)
bằng cách
sử dụng
hàm
ảo
(virtual func
tions) thay
cho
cơ
chế
kết
nối tĩnh
(static
binding)
ngay
khi
chương
trình
biên
dịch
.
2. Hàm ảo (Virtual functions)
Hàm ảo là hàm phải được mô tả trong lớp cơ sở, trước hàm ảo phải có từ khoá virtual.
Ví dụ 1.
K
ết quả chương trình là gì?