Skip to main content
Skip header
Terminated in academic year 2024/2025

C++ Programming II

Type of study Bachelor
Language of instruction English
Code 460-2072/02
Abbreviation C++ II
Course title C++ Programming II
Credits 4
Coordinating department Department of Computer Science
Course coordinator doc. Ing. Petr Gajdoš, Ph.D.

Subject syllabus

Lectures will serve as an entry point for exercises. They set themselves the objective of introducing students into the problematics and outlining the subsequent work on the exercises.

Lectures will include at least the following topics:

- template functions and data types
- tricks to optimize your program
- working with threads
- lambda expressions
- binary masks, enumerators
- metaprogramming, type predicates, traits
- case study: constructing a custom class for working with dynamic memory, move constructs and related operators, defining own iterators, range iterator
- case study: varyadic functions
- case study: linking C++ with other tools (MATLAB, R, nodeJS)
- case study: selected programming examples (ACM-ICPC)

Practical exercises on computer labs will correspond to lecture notes:

1. Creating template methods and classes
2. Possible optimizations of program run
3. Threads and their usage
4. Lambda expressions
5. Binary masks, enumerators
6. Metaprogramming, type predicates, traits
7-8. Case Study: dynamic memory allocation, move structure and related operators, definition of its own iterators, range iterator
9.-10. Case Study: Varyadic functions
11-12. Case Study: Linking C++ with other tools (MATLAB, R, nodeJS)
13-14. Case Study: Selected programming examples (ACM-ICPC)

Literature

[1] Stroustrup, Bjarne. The C++ programming language. Upper Saddle River, NJ: Addison-Wesley, 2013. Print.

[2] Bancila, Marius. Modern C++ programming cookbook : over 100 recipes to help you overcome your difficulties with C++ programming and gain deeper understanding of the working of modern C. Birmingham, UK: Packt Publishing, 2017. Print.

Advised literature

[1] Galowicz, Jacek. C++17 STL Cookbook. Birmingham: Packt Publishing, 2017. Print.

[2] Savitch, Walter J., and Kenrick Mock. Problem solving with C++. 9th Edition, Boston: Pearson, 2015. Print.