Grundlagen der Programmierung in C/C++, 11. Vorlesung (12. Januar 2022) #programming #cplusplus

preview_player
Показать описание
In der 11. Vorlesung unserer ersten Vorlesungsreihe "Grundlagen der Programmierung in C/C++" geht es heute um selbstdefinierte Typen. Wir freuen uns wie immer auf Fragen und Anregungen.

0:00 Begrüßung
2:33 Abgeleitete Typen
9:23 Definition einfacher Felder
18:56 Einfache Felder (eindimensional)
35:57 Beispiel Felder
57:13 enum
1:25:16 C++11: scoped enum
1:27:49 struct
1:43:00 „Bitfelder“
1:50:10 union
1:54:23 (selbstdefinierte) Typen
2:03:14 Ausblick, Fragen & Abschied
Рекомендации по теме
Комментарии
Автор

bei 1:12:30h : Wäre ein vom Compiler eingesetzter unsigned datentyp nicht logischer, da im enum selbst keine negativen Werte vergeben werden?
bei 1:44:00h reicht für iJahr immer ein char, wenn man sowohl bei input als auch bei output immer sorgfältig mit einem offset von 1900 rechnet,
bei 1:30:00h reicht ebenfalls ein char für iAlter, gerade ein (signed) int ist hier m.M.n. fehl am Platze, ein char an der Stelle erspart 3byte bei der Größe der Datenstruktur
An beiden Stellen ergeben die chars zusätzlich eine grobe Vorkontrolle zur Gültigkeit der Daten, so dass negative und deutlich zu große Werte von vornherein per rangecheck ausgeschlossen werden können.

SmashKay
Автор

zum Thema Resourcen sind im Überfluß vorhanden und warum soll ich float statt long double nutzen, wenn ich 64 GB ram, zum Beispiel, was mich seit gut 20 Jahren ärgert, ist, daß ich mir alle zwei Jahre quasi neue Hardware kaufen muß, um die aktuellste Software, sprich Spiele, laufen zu lassen, und diese dann immernoch nicht flüssig auf maximalen Einstellungen laufen.

Zum Vergleich hatte ich in den 80ern einen C64, wo die Programmierer scheinbar gelernt haben, mit der limitierten Hardware bessere Algorithmen zu entwickeln, denn wenn man sich die Spiele der frühen 80er mit denen der späten 80er vergleicht, dazwischen liegen Welten.

Ich frage mich, ob ich wirklich alle zwei Jahre neue Hardware bräuchte, wenn Spieleprogrammierer lernen würden, alles aus der Hardware rauszuholen, was drin steckt. Wenn man Programme dermaßen optimieren kann, daß die Laufzeit von 10 Stunden auf 30 Minuten reduziert werden kann, warum brauch ich dann alle zwei Jahre 4 weitere Prozessorkerne und 3072 weitere cuda kerne oder was auch immer?

marcrindermann