IPK Tutorium 06
Corona-Regeln der Universität
- Kontaktverfolgung über QR-Codes
- 2G - Pflicht (mit Ausnahmen)
- Kontrollen am Eingang von INF 205
- Durchgängige Maskenpflicht
https://check-in.uni-heidelberg.de/erfassung/6205.03.104/
Ablauf des TUtoriums heute
- Zeit für die Evaluation
- Blick auf Blatt 06
- Bennenung der Votierenden
- Fragen zu Blatt 06
- Häufige Fehler
- ?
- Hinweise zu Blatt 07
- Wiederholung zu Templates
- Arbeitsphase Blatt 07 & Votieren
Evaluation
- Möglichkeit ...
- für mich Feedback zu bekommen um in Zukunft Tutorien zu verbessern
- für die Studienkommission einen Überblick über die aktuelle Qualität der Lehre und Potential für Verbesserungen zu bekommen
- für uns Studis unsere Meinung zu einer Veranstaltung zu sagen
- Wäre deswegen super, wenn möglichst alle die Umfrage ausfüllen!
- Ende der Umfrage: 21.12.2021 08:00 Uhr
- Dozent:innen sollen die Ergebnisse in der Veranstaltung besprechen
Häufige Fehler bei Blatt 06
Error:
- Fehler in den CMake Files
- Codestrukturierung ... herausfordernd
- Headerguards bitte nur in Headern!
- using namespace std;
-Wall:
- Oft hat das mit der Constructor Initializer List nur für die "simplen" Fälle geklappt
- Includes in Headern nicht aufgeräumt
- Tests nicht benannt (Wieso macht man das so?)
- In Zukunft "assert()" (oder ein richtiges Testframework) nehmen
-Weverything:
- Hier und da ein bisschen Mimimi
Votieren - Gleich in der Arbeitsphase
- Aufgabe 6.1 - Gruppe 28 (Olga etc.)
- Aufgabe 6.2 - Gruppe 25 (Jakob etc.)
Gibts Fragen Zu Blatt 06?
Sonst gerne auch gleich in der Übungsphase!
Hinweise zu Blatt 07
- Macht die Aufgabe 2 ("Templates 101") zuerst!
- Meldet euch, falls ihr Probleme habt!
Exkurs: Templates - Motivation
int max(int a, int b) {
return a > b ? a : b;
}
SOMETYPE max(SOMETYPE a, SOMETYPE b) {
return a > b ? a : b;
}
double max(double a, double b) {
return a > b ? a : b;
}
float max(float a, float b) {
return a > b ? a : b;
}
WDH: Templates - Was passiert da?
cppinsights.io
Exkurs: Templates
Exkurs: Templates
WDH: Templates - Fun Fact
#include <iostream>
template <int N>
struct Factorial {
enum { val = Factorial<N-1>::val * N };
};
template<>
struct Factorial<0> {
enum { val = 1 };
};
int main() {
// Note this value is generated at compile time.
// Also note that most compilers have a limit on the depth of the recursion available.
std::cout << Factorial<4>::val << "\n";
}
WDH: Templates - Errors
Note to Self: Siehe Files!
Evaluation, ÜbungsBlatt & Votieren
Übungsblatt 07 im Moodlekurs
Christian Heusel c.heusel@stud.uni-heidelberg.de https://discord.mathphys.info
IPK Tutorium 06
By Christian Heusel
IPK Tutorium 06
- 39