Μεθοδολογίες
Προγραμματισμού (Εργαστήριο)
5n Εργασία
Δημιουργείστε μία απλή ιεραρχία σχημάτων. Μία βασική τάξη
(base class) η οποία ονομάζεται “shape” και παράγωγες τάξεις
(derived classes) με ονόματα “circle”, “square” και “triangle”. Στην βασική τάξη δημιουργείστε
μία εικονική συνάρτηση με όνομα “draw” και ορίστε την ξανά
στις παράγωγες τάξεις. Σε κάθε παράγωγη τάξη θα εμφανίζει το αντίστοιχο σχήμα
(κύκλος, τετράγωνο, τρίγωνο) με την χρήση του χαρακτήρα *.
Δημιουργείστε ένα πίνακα δεικτών σε αντικείμενα τύπου “shape” (εκτελώντας upcasting των δεικτών) και καλέστε την συνάρτηση “draw” μέσω των δεικτών της βασικής τάξης, για να
επιβεβαιώσετε την συμπεριφορά της εικονικής συνάρτησης.
Παραλλαγή 1: Μετατρέψτε την συνάρτηση “draw” σε γνήσια εικονική
συνάρτηση και προσπαθείστε να ορίσετε ένα αντικείμενο τύπου “shape”.
Παραλλαγή 2: Προσπαθείστε να καλέσετε την γνήσια
εικονική συνάρτηση μέσα στον δομητή και δείτε και περιγράψτε τι συμβαίνει.