Object-Oriented C++
Classes, objects, inheritance, polymorphism, and the pillars of OOP in C++.
Classes & Objects
Classes, Structs & Encapsulation
Understand the difference between struct and class, access specifiers, encapsulation, const member functions, static members, and modern aggregate initialization.
Κατασκευαστές, Καταστροφείς & Κανόνας 0/3/5
Κατακτήστε τον πλήρη κύκλο ζωής των αντικειμένων C++ — από την κατασκευή έως την καταστροφή — και μάθετε πότε να γράφετε (ή να μην γράφετε) ειδικές συναρτήσεις μελών.
Copy Semantics: Deep vs Shallow
Μάθετε τη διαφορά μεταξύ ρηχών και βαθιών αντιγράφων, πώς να εφαρμόζετε σωστές λειτουργίες αντιγραφής για κλάσεις που διαθέτουν πόρους και το ιδίωμα αντιγραφής και ανταλλαγής.
Κληρονομικότητα & Πολυμορφισμός
Κληρονομικότητα & Σχέσεις Is-A
Μάθετε τη δημόσια κληρονομικότητα, τη σύνδεση κατασκευαστή, το πρόβλημα κοπής, την πολλαπλή κληρονομικότητα και το πρόβλημα του διαμαντιού — και πότε είναι κατάλληλη η κληρονομικότητα.
Εικονικές Συναρτήσεις, vtables & Πολυμορφισμός
Βουτήξτε στον πολυμορφισμό χρόνου εκτέλεσης: πώς λειτουργεί η εικονική αποστολή κάτω από την κουκούλα, πότε να χρησιμοποιήσετε την παράκαμψη και τις τελικές, αφηρημένες κλάσεις και το RTTI.
Υπερφόρτωση χειριστή
Μάθετε πώς να υπερφορτώνετε σωστά τους χειριστές — μέλη έναντι μη μέλους, κανονικές φόρμες, χειριστές ροής, χειριστή διαστημόπλοιου C++20 και κοινές παγίδες.
OOP Design
Static Members, Singletons & PIMPL
Explore static members, the Meyers Singleton pattern, the Factory pattern, and the PIMPL idiom for ABI stability and compile-time insulation.
Σύνθεση, Διεπαφές & Σχεδίαση
Master composition over inheritance, pure abstract interfaces, design principles (ISP, DIP), std::variant as an alternative to inheritance, and type erasure.