Mastering Object-Oriented Programming in C++: The Art of Object-Oriented Programming (Polytech'Dijon)
The documents available in this GitHub repository are intended for students in the Computer Science / Electronics departments of the Polytech'Dijon engineering school - Dijon - France. They are subject to change as the content of this module evolves.
- 2025/11/30: add lecture 04 (STL)
- 2025/11/26: update lecture 03 (Polymorphism) and code samples
- 2025/11/18: add lecture 03 (Polymorphism) and code samples
- 2025/11/13: update lecture 02 (Inheritance) and code samples
- 2025/11/06: add lecture 02 (Inheritance) and code samples
- 2025/10/22: update lecture 01 (User-defined Data Types)
- 2025/10/15: add TD1 and TD2 (Tutorials)
- 2025/10/08: update code samples for lecture 01 (User-defined Data Types)
- 2025/10/08: update lecture 01 (User-defined Data Types)
- 2025/09/30: update lecture 00 (Introduction)
- 2025/09/25: add code samples for lecture 01 (User-defined Data Types)
- 2025/09/25: add lecture 01 (User-defined Data Types)
- 2025/09/25: add lecture 00 (Introduction)
Lectures are organized in lessons, each of them are dedicated to a specific C++ Topic. They are available in pdf format for download:
- Lecture 00: Course Introduction - 32 MB - Last release on Sept., 30, 2025
- Lecture 01: User-defined Data Types - 33 MB - Last release on Oct., 20, 2025
- Lecture 02: Inheritance - 16 MB - Last release on Nov., 13, 2025
- Lecture 03: Polymorphism - 20 MB - Last release on Nov., 26, 2025
- Lecture 04: Standard Template Library - 16 MB - Last release on Nov., 30, 2025
- to be continued...
- Directory samples: Sets of codes used in lectures
- Directory TD: Tutorials
- Directory exams: Exams
- Directory TP: Lab work
- Directory utils: Additional documents
Two additional presentations are also available:
- Introduction on Makefiles - https://ginhac.com/teaching/ITC313/makefile-intro.pdf - A generic Makefile for basic C++ projects is available in utils.
- Introduction on git/GitHub - https://ginhac.com/teaching/ITC313/git-intro.pdf - A french tutorial on git/GitHub with 2 developers is also available in utils.
- Lecture 00: Course Introduction - 30 MB - Last release on Sept., 18, 2024
- Lecture 01: User-defined Data Types - 36 MB - Last release on Oct., 15, 2024
- Lecture 02: Inheritance - 9.9 MB - Last release on Oct., 22, 2024
- Lecture 03: Polymorphism - 18 MB - Last release on Nov., 6, 2024
- Lecture 04: Standard Template Library - 15 MB - Last release on Oct., 22, 2023
- Lecture 00: Course Introduction - 27 MB - Last release on Sept., 26, 2023
- Lecture 01: User-defined Data Types - 33 MB - Last release on Sept., 26, 2023
- Lecture 03: Polymorphism - 14 MB - Last release on Oct., 15, 2023
- Lecture 04: Standard Template Library - 12 MB - Last release on Oct., 22, 2023
- Lecture 00: Course Introduction - 26 MB - Last release on Sept., 27, 2022
- Lecture 01: User-defined Data Types - 33 MB - Last release on Oct., 06, 2022
- Lecture 02: Inheritance - 6.5 MB - Last release on Oct., 17, 2022
- Lecture 03: Polymorphism - 14 MB - Last release on Oct., 16, 2022
- Lecture 04: Standard Template Library - 12 MB - Last release on Oct., 20, 2022
- Lecture 00: Course Introduction - 17.3 MB - Last release on Oct, 12
- Lecture 01: User-defined Data Types - 24.4 MB - Last release on Oct, 12
- Lecture 02: Inheritance - 6.7 MB - Last release on Oct, 12
- Lecture 03: Polymorphism - 14.5 MB - Last release on Oct, 12
- Lecture 04: STL - 10.2 MB - Last release on Dec, 06
- Lecture 05: Indirection - 18.1 MB - Last release on Dec, 06
- Lecture 06: Templates - 8.6 MB - Last release on Dec, 07
- Lesson 00: ITC313 Course Introduction - 10.4 MB - https://ginhac.com/teaching/ITC313/2020-2021/lesson-00.pdf
- Lesson 01: Hello, world! - 10 MB - https://ginhac.com/teaching/ITC313/2020-2021/lesson-01.pdf
- Lesson 02: User-defined types - 14.4 MB - https://ginhac.com/teaching/ITC313/2020-2021/lesson-02.pdf
- Lesson 03: Inheritance - 8.9 MB - https://ginhac.com/teaching/ITC313/2020-2021/lesson-03.pdf
- Lesson 04: Polymorphism - 10.5 MB - https://ginhac.com/teaching/ITC313/2020-2021/lesson-04.pdf
- Lesson 05: STL Containers - 14.8 MB - https://ginhac.com/teaching/ITC313/2020-2021/lesson-05.pdf
- Lesson 06: Indirection - 12.6 MB - https://ginhac.com/teaching/ITC313/2020-2021/lesson-06.pdf
The lectures are licensed under a Creative Commons Attribution-NonCommercial 4.0 International Licenseand the source code is licensed under a GNU General Public License (GPL) version 3.

