Programming in C++ 2
Code | Completion | Credits | Range | Language |
---|---|---|---|---|
18PRC2 | KZ | 4 | 2+2 | Czech |
- Course guarantor:
- Miroslav Virius
- Lecturer:
- Vladimír Jarý, Jakub Klinkovský, Miroslav Virius
- Tutor:
- Vladimír Jarý, Jakub Klinkovský, Miroslav Virius
- Supervisor:
- Department of Software Engineering
- Synopsis:
-
This course covers the object oriented programming and othesr advanced constructs in the C+;+ programming language and the Standard Template Library.
- Requirements:
-
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:
-
Knowledge:
The C++ programming language according to the ISO 14882:2003 international standard (including the proposed new version of the standard).
Ability:
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.
- Note:
- Time-table for winter semester 2024/2025:
- Time-table is not available yet
- Time-table for summer semester 2024/2025:
- Time-table is not available yet
- The course is a part of the following study plans:
-
- Fyzikální inženýrství - Počítačová fyzika (PS)
- Aplikovaná algebra a analýza (elective course)
- Aplikace informatiky v přírodních vědách (compulsory course in the program)
- Aplikované matematicko-stochastické metody (elective course)
- Jaderné inženýrství - Aplikovaná fyzika ionizujícího záření (elective course)
- Aplikovaná informatika (compulsory course in the program)
- Fyzikální inženýrství - Fyzika plazmatu a termojaderné fúze (elective course)
- Jaderná a částicová fyzika (elective course)
- Jaderné inženýrství - Jaderné reaktory (elective course)
- Fyzikální inženýrství - Laserová technika a fotonika (elective course)
- Matematické inženýrství - Matematická informatika (PS)
- Matematické inženýrství - Matematické modelování (elective course)
- Kvantové technologie (elective course)
- jaderné inženýrství - Radioaktivita v životním prostředí (elective course)
- Physical Engineering - Computational physics (PS)
- Quantum Technologies (elective course)
- Nuclear and Particle Physics (elective course)
- Physical Engineering - Plasma Physics and Thermonuclear Fusion (elective course)