Tham khảo tài liệu 'lập trình hướng đối tượng với c++ part 6', công nghệ thông tin, kỹ thuật lập trình phục vụ nhu cầu học tập, nghiên cứu và làm việc hiệu quả | Lập trình hưởng đối tượng với color 0 Ỉ coloredpoint float ox float oy unsigned int c point ox oy color c coloredpoint coloredpoint b point point b color void display cout Ham coloredpoint display n point display 0 -J gọi tới hùm cùng tên trong lớp cơ sờ I cout Mau color endl void nain clrscr point adp coloredpoint pc 2 3 5 cout adp pc n adp pc adp- move 2 3 cout adp- rnove 2 3 n adp- display getch Hara coloredpoint tdisp Goì haưn point dis pl a y Toa do 2 3 Mau 5 adp - 4pc -171- Kỹ thuật thửa kế adp move 2 3ỉ Ham coloxedpoint í display Goi ham point display0 Toa do 4 6 Ễbĩau 5 Go ham point display Toa do 4 6 Nhận xét Chú ý kết quả thực hiện chỉ thị adp- displaỵ Got ham point display 0 Toa do 4 ố Như vậy mặc dù adpchứa địa chí của đối tượng coloredpoint là pc nhưng apd- display vẫn là point display chứ không phải coloredpoint display . Hiện tượng này được giái thích Là do adp được khai báo là con trỏ kiểu point và vì các hàm trong point đều dược khai báo như bình thường nen adp chi có thế gọi được các hàm thành phần có trong point chứ không phụ thuộc vào đối tượng mà adp chứa địa chỉ. Muốn có dược tính đa hình cho display nghĩa là lời gọi tới display phụ thuộc vào kiểu dối tượng có địa chi chứa trong adp ta phải khai báo hàm thành phần display trong point như là một hàm áo. Phẩn sau chúng ta sẽ đề cập vấn đề này Tương thích giữa tham chiếu lớp dan xuât và tham chiếu lớp cơ sớ Vấn đồ được xét trong phần cũng hoàn toàn tinmg tự dối với tham chiếu. Ta xét chưung trình sau Ví dụ I l Sinclude include -172- trình hưtrtỉỊi íhh tư ntịỊ vởi 4 class point float X y public pointo x 0 y - 0 ỉ point float ox float oyi x ox y oy I point point p x y void display cout Goi ham point display n cout Toa do x y endl 1 void move float dx float dy X dx y t dy Ỉ Í IỜỊÌ olrn cilpoint thìtư kế từ point class coloredpoint public point unsigned int color public coloredpoint point color 0 coloredpoint .