The programming model of C++ is discussed in some depth. In particular the mechanisms for efficient memory management and generic programming with C++ are covered.
Objective
Ability to implement memory-efficient data structures and efficient generic algorithms using C++.
Content
Vectors, pointers and iterators, range for, keyword auto, a class for vectors, subscript-operator, move-construction and iteration. RAII (Resouce Allocation is Initialization) Principle, Templates and Generic Programming, Functors and Lambda Expressions.
Lecture notes
Detailled, bilingual slides of the lectures will be made available.
Literature
B.Stroustrup, The C++ Programming Language (4th Edition), Addison Wesley 2013.
Prerequisites / Notice
Lecture Series Informatik I 252-0832-00L or equivalent knowledge in programming with C++.
Course can only be taken if the programming project is executed and submitted. If no solution to the programming project is submitted, the course is considered failed («no show»).
Performance assessment
Performance assessment information (valid until the course unit is held again)
Repetition only possible after re-enrolling for the course unit.
Additional information on mode of examination
Work on a programming project with online hand-in. Course can only be taken if the programming project is executed and submitted. If no solution to the programming project is submitted, the course is considered failed («no show»).