Στόχοι εργαστηρίου:
Εξοικείωση με προχωρημένα ζητήματα των κλάσεων: κληρονομικότητα, αφηρημένες μέθοδοι και κλάσεις, εικονικές συναρτήσεις,
Έναρξη υλοποίησης της 2ης Σειράς Ασκήσεων
Κλάσεις (απλές - cnt.)
- Στην Άσκηση 4, σε τι χρησιμεύει το const στις μεθόδους της κλάσης Move;
- Αγνοήστε/παραλήψτε προς το παρόν το "throw(logic_error)" (θα καλυφθεί σε επόμενο μάθημα). Επιστρέψτε και ολοκληρώστε την υλοποίησή σας όταν μάθετε για τα exceptions.
- Προσθέστε στην κλάση Move ό,τι επιπλέον private στοιχεία χρειάζεται
- Ομοίως για την κλάση State
- Γιατί η παράμετρος της συνάρτησης next είναι "const Move &move";
- Υλοποιήστε τις κλάσεις Move και State
Κλάσεις (προχωρημένες)
- Συμβουλευτείτε τις διαφάνειες 36-45 της 4ης διάλεξης και εξηγήστε τι σημαίνει και τι χρειάζεται η λέξη κλειδί virtual στις μεθόδους της κλάσης Player στην Άσκηση 5.
- Συμβουλευτείτε τη διαφάνεια 40 της 4ης διάλεξης και εξηγήστε τι σημαίνει και τι χρειάζεται η έκφραση "= 0"
- Υλοποιήστε με κατάλληλη χρήση της κληρονομικότητας (βλ. διαλέξεις 3 και 4) τις διάφορες κατηγορίες Player