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)