Πανεπιστήμιο Ιωαννίνων - Τμήμα Πληροφορικής και Τηλεπικοινωνιών
Γκόγκος Χρήστος - Άρτα@2025
- e-course μαθήματος: http://ecourse.uoi.gr/course/view.php?id=1944
- Θεωρία κάθε Τρίτη 13:00-15:00 στο ΑΜΦ-Β και κάθε Πέμπτη 12:00-14:00 στο ΑΜΦ-Β.
- Εργαστήριο 2 ώρες κάθε δεύτερη εβδομάδα σύμφωνα με το πρόγραμμα της κάθε ομάδας.
- Βιβλίο [122077282]: C++: Από τη Θεωρία στην Εφαρμογή, Γ. Τσελίκης Λεπτομέρειες
- Βιβλίο [77112469]: Προγραμματισμός με τη C++, 2η Έκδοση, Stroustrup Bjarne Λεπτομέρειες
- Βιβλίο [122078440]: Η ΓΛΩΣΣΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ C++, BJARNE STROUSTRUP Λεπτομέρειες
- Βιβλίο [50659221]: C++ Προγραμματισμός, 9η Εκδ., Paul J. Deitel, Harvey M. Deitel Λεπτομέρειες
Τελευταία ενημέρωση: 12/1/2025
Ύλη προόδου ημερομηνία και ώρα προόδου 3/12/2024 13:00-15:00
Ύλη τελικής εξέτασης - ημερομηνία και ώρα τελικής εξέτασης 23/1/2025 12:00-15:00
C++ reference card μπορείτε να το έχετε εκτυπωμένο μαζί σας στις εξετάσεις προόδου και στις τελικές εξετάσεις.
- Παρουσίαση 1 - Εισαγωγή
- Παρουσίαση 2 - Επίπεδα προστασίας, κατασκευαστές
- Παρουσίαση 3 - Περιβάλλον Unix και μεταγλώττιση
- Παρουσίαση 4 - friend, κατασκευαστές μετατροπής, destructors
- Παρουσίαση 5 - const
- Παρουσίαση 6 - Υπερφόρτωση τελεστών
- Παρουσίαση 7 - Σύνθεση
- Παρουσίαση 8 - Πίνακες αντικειμένων
- Παρουσίαση 9 - Δείκτες
- Παρουσίαση 10 - Δυναμική δέσμευση μνήμης
- Παρουσίαση 11 - Αναδρομή
- Παρουσίαση 12 - Κατασκευαστής αντιγραφής (copy constructor) και αντιγραφή μέσω τελεστή ανάθεσης (assignment operator)
- Παρουσίαση 13 - Λεκτικά, υπερφόρτωση του τελεστή [] και του τελεστή &
- Παρουσίαση 14 - Κληρονομικότητα
- Παρουσίαση 15 - Πολυμορφισμός και ιδεατές συναρτήσεις
- Παρουσίαση 16 - Πρότυπα
- Παρουσίαση 17 - Συνδεδεμένες λίστες
- Παρουσίαση 18 - Εξαιρέσεις
- Παρουσίαση 19 - Χρήσιμες έννοιες στη C++ και μερικές ακόμα δομές δεδομένων
Οι παραπάνω παρουσιάσεις αποτελούν προσαρμογή υλικού που έχει αναπτυχθεί από τους Robert Myers, Matthew Small, Xin Yuan στα πλαίσια μαθημάτων για τον αντικειμενοστραφή προγραμματισμό με τη C++ COP3330/CGS5409: Object-oriented Programming in C++.
- Παρουσίαση 20 - Δείκτες στη C και στη C++
- Παρουσίαση 21 - STL
- Παρουσίαση 22 - C++ vs. Java
- Παρουσίαση 23 - UML - Διαγράμματα κλάσεων
- C++ institute - C++ essentials 1 by OpenEDG
- C++ institute - C++ essentials 2 by OpenEDG
- CS107
- Modern C++ Programming - C++03 / C++11 / C++14 / C++17 / C++20 / C++23 / C++26 by Federico Busato
- learncpp
- yet another insignificant... programming notes
- wikibooks - C++ programming
- cplusplus.com tutorials
- Learn C++ in Y minutes
- Educative.io - Learn C++ from scratch
- Sololearn: C++
- Udemy: C++ Tutorial for Complete Beginners
- https://devdocs.io/ και με δυνατότητα για offline χρήση
- zeal για offline χρήση
- https://en.cppreference.com/w/
- https://www.cplusplus.com/reference/
- Google's C++ Style Guide με εγκατάσταση του cpplint, μπορεί να γίνεται έλεγχος αυτόματος έλεγχος της συμμόρφωσης του κώδικα με τον οδηγό στυλ της Google, μέσα από το VSCode ή από τη γραμμή εντολών.
- FizzBuzz παράδειγμα με τη βιβλιοθήκη Catch2
- Καράλη, Ι. (2023). Αντικειμενοστραφής Προγραμματισμός: Έννοιες και Τεχνικές [Προπτυχιακό εγχειρίδιο]. Κάλλιπος, Ανοικτές Ακαδημαϊκές Εκδόσεις.
- Αλεβίζος, Θ. (2014). Προγραμματισμός με τη γλώσσα C++ [Προπτυχιακό εγχειρίδιο]. Κάλλιπος, Ανοικτές Ακαδημαϊκές Εκδόσεις.
- Εισαγωγή στη γλώσσα προγραμματισμού C++14, Σταμάτης Σταματιάδης
- C++ insights by Andreas Fertig
- Compiler explorer by Matt Godbolt
- Online C++ compiler and visual debugger - pythontutor
- Debugging
- CMAKE (An open-source, cross-platform family of tools designed to build, test and package software) https://cmake.org/