Lecturers |
Harald Köstler |
| Klaus Iglberger |
| Markus Stürmer |
| |
eMail |
harald.koestler@informatik.uni-erlangen.de |
| klaus.iglberger@informatik.uni-erlangen.de |
| markus.stuermer@informatik.uni-erlangen.de |
| |
Exam
|
Thursday, 28.2.1013, 10:00 - 11:00 (H9) |
| 2013-03-11: Correction is finally complete. If you agreed, you can find your grade on the notice board of our chair (opposite to computer lab 00.131). Inspection of exams is possible on March 26th at 14.00h in room 00.133! |
Lecture
|
Tuesday, 16:00 - 17:30, H16 |
| Friday, 08:30 - 10:00, H5 |
| 2013-02-08: Wrap-up and comments on exam |
| |
Exercise |
Monday, 16:00 - 17:30, 01.155-113 |
| Thursday, 08:30 - 10:00, 01.155-113 |
The day and time of the second exercise class is fixed: Thursday, 8:30 - 10:00. Please note that the second exercise class is also in room 01.155-113!! |
| |
Contents |
Introduction to C++ and the standard library |
| Object Oriented Concepts |
| Generic Programming, Containers and ALgorithms, Advanced C++ Features |
| Coding Standards and Design Patterns |
| |
Literature |
Lippman et al C++ Primer. Addison-Wesley |
Stroustrup, Bjarne Programming: Principles and Practice Using C++. Addison-Wesley |
Stroustrup, Bjarne The C++ Programming Language. Addison-Wesley |
Sutter, Herb and Alexandrescu, Andrei C++ coding standards. Addison-Wesley |
Herold, Klar C++, UML and design patterns. Addison-Wesley |
| ... |
| |
C++ References |
The Apache Software Foundation |
| C++ Reference |
| The C++ Resources Network |
| ... |
| |
Slides |
Introduction to C++: Lecture 1 |
| Introduction to C++ (Types): Lecture 2 |
| Introduction to C++ (IO Library, vector, string, arrays): Lecture 3 |
| Introduction to C++ (Expressions): Lecture 4 |
| Introduction to C++ (Statements): Lecture 5 |
| Introduction to C++ (Functions): Lecture 6 |
| Introduction to C++ (Classes): Lecture 7 |
| Introduction to the standard library (IO library): Lecture 8 |
| Introduction to the standard library (Sequential containers): Lecture 9 |
| Introduction to the standard library (Generic Algorithms): Lecture 10 |
| Introduction to the standard library (Associative Containers): Lecture 11 |
| Introduction to the standard library (Dynamic Memory): Lecture 12 |
| Object Oriented Concepts (Copy Control): Lecture 13 |
| Object Oriented Concepts (Operator Overloading): Lecture 14 |
| Object Oriented Concepts (Inheritance and dynamic polymorphism): Lecture 15 |
| Generic Programming (Templates): Lecture 16 |
| Advanced C++ Features (Exceptions): Lecture 17 |
| Advanced C++ Features (Function objects, namespaces): Lecture 18 |
| Advanced C++ Features (Multiple and Virtual Inheritance): Lecture 19 |
| Advanced C++ Features (tuples, regular expressions, random numbers, type traits): Lecture 20 |
| Parallel Programming Concepts (Threads): Lecture 21 |
| Object Oriented Software Design(Design Patterns I): Lecture 22 |
| Object Oriented Software Design(Design Patterns II): Lecture 23 |
| Object Oriented Software Design(Coding standards I): Lecture 24 |
| Object Oriented Software Design(Coding standards II): Lecture 25 |
| Object Oriented Software Design(Expression Templates): Lecture 26 |
| |
Code Examples from C++ Primer |
Visual Studio Examples new Primer,
GCC examples new Primer,
Chapter 5,
Chapter 6,
Chapter 7
|
|
Chapter 8,
Chapter 9,
Chapter 10,
Chapter 11,
Chapter 12
|
|
Chapter 13,
Chapter 14,
Chapter 15,
Chapter 16,
Chapter 17
|
| Chapter 18
Coding standard examples
Expression Templates
Design Patterns
|
| ... |
| |
Assignments |
ex01.pdf,
ex01.zip,
ex01_solution,
ex01_solution.zip
|
|
ex02.pdf,
ex02.zip,
ex02_solution.pdf (update 2013-02-26),
ex02_solution.zip
|
|
ex03.pdf,
ex03.zip,
ex03_solution.pdf (update 2013-02-26),
ex03_solution.zip
|
|
ex04.pdf,
ex04.zip,
ex04_solution.pdf,
ex04_solution.zip
|
|
ex05.pdf,
ex05.zip,
ex05_solution.pdf,
ex05_solution.zip
|
exproject.zip (update 2013-01-17 2013-01-30, please also see the project page),
exproject_solution.zip |
| |
Tutorials |
First steps: Compiling a C++ program and Makefiles
|
Valgrind
|
Debugging under Unix: the GDB
|