Programming in C++ 2

Login to KOS for course enrollment Display time-table
Code Completion Credits Range Language
18PRC2 KZ 4 2+2 Czech
The condition for enrollment in a given course is that the student has successfully completed or at least obtained a credit and has not exhausted all exam dates of the course:
Programming in C++ 1 (18PRC1)
Garant předmětu:
Vladimír Jarý, Jakub Klinkovský, Miroslav Virius
Vladimír Jarý, Jakub Klinkovský, Miroslav Virius
Department of Software Engineering

This course covers the object oriented programming and othesr advanced constructs in the C+;+ programming language and the Standard Template Library.


Programming in C++ 1

Syllabus of lectures:

1. Class (object) types in C++

1.1 Declaraion of the class type without ancestors

1.2 Fields and methods. constructors.

1.3 Copy constructor. Destructor.

1.4 Inner class.

1.5 Inheritance, virtual methods.

1.6 Identifier conflicts.

1.7 Virtual inheritance.

1.8 Union as object type.

1.9 Member pointers.

2. Operator overloading

2.1 Common operator overloading.

2.2 Operators overloadable as methods only.

2.3 Operators new and delete.

3. Templates

3.1 Declaration, parameters.

3.2 Class type templetes

3.3 Function templates

3.4 Template metaprogramming

4. Exceptions.

5. Run time type identification.

6. Namespaces.

7. Input/output by stream classes.

8. STL: containers, localization tools.

Syllabus of tutorials:

Excercises outline and sylabus is the same as the outline and sylabus of the lecture

Study Objective:


The C++ programming language according to the ISO 14882:2003 international standard (including the proposed new version of the standard).


Usage of the advanced constructs of the C++ programming language for the solution of the common programming tasks.

Study materials:

Key references:

[1] Virius, M: Programování v C++, 3. vyd. Praha, Vydavatelství ČVUT 2009. ISBN 978-80-01-04371-4

Recommended references:

[1] Stroustrup, B.: The C++ Programming Language. 3rd edition. Addison-Wesley 1997. ISBN 0-201-88954-4.

[2] Virius, M. Pasti a propasti jazyka C++. Druhé vydání. Brno, Computer Press 2005. ISBN 80-251-0509-1.

[3] Eckel, B. Myslíme v jazyku C++. Praha, Grada Publishing 2000. ISBN 80-247-9009-2. 552 stran. (První díl)

[4] Sutter, H. Exceptional C++. Addison-Wesley 2000. ISBN 0-201-61562-2.

[5] Sutter, H. More Exceptional C++. Addison-Wesley 2002. ISBN 0-201-70434-X.

[6] Koenig, A. C Traps and Pitfalls. Addison-Wesley 1989. ISBN 0-201-18928-8.

Time-table for winter semester 2023/2024:
Time-table is not available yet
Time-table for summer semester 2023/2024:
Time-table is not available yet
The course is a part of the following study plans:
Data valid to 2023-10-03
Aktualizace výše uvedených informací naleznete na adrese https://bilakniha.cvut.cz/en/predmet11360405.html