Μεθοδολογίες Προγραμματισμού (Εργαστήριο)

 

5n Εργασία

 

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

Δημιουργείστε ένα πίνακα δεικτών σε αντικείμενα τύπου “shape”  (εκτελώντας upcasting των δεικτών) και καλέστε την συνάρτηση “draw” μέσω των δεικτών της βασικής τάξης, για να επιβεβαιώσετε την συμπεριφορά της εικονικής συνάρτησης.

 

Παραλλαγή 1: Μετατρέψτε την συνάρτηση “draw” σε γνήσια εικονική συνάρτηση και προσπαθείστε να ορίσετε ένα αντικείμενο τύπου “shape”.

Παραλλαγή 2: Προσπαθείστε να καλέσετε την γνήσια εικονική συνάρτηση μέσα στον δομητή και δείτε και περιγράψτε τι συμβαίνει.