C++Guns – RoboBlog

05.02.2018

C++ Guns: Generic Data Type Design Pattern - Teil 4

Filed under: Allgemein — Tags: — Thomas @ 16:02

Die Idee, für User defined Datentypen jede Variable in einem std::tuple oder std::array zu halten, kann nicht überall gut sein. Für jede Variable benötigt man noch eine getter Funktion um der Variablen einen Namen und damit Semantik zu geben. Ich hatte in den letzten Kapitel noch erwähnt, dass es viel Sinn macht, diese Funktionen als const zu deklarieren. Da in den Beispiel Datentypen jede Variablen von der anderen abhängt. Und daher dürfen sie nicht beliebig getrennt verändert werden.

Wann diese Regel nicht mehr gilt ist ganz klar: Wenn Variablen in einem Typ gespeichert werden, die nicht voneinander abhängen. Da frage ich mich natürlich gleich, warum sie dann in einem gemeinsamen Typ gespeichert sind. Aber womöglich ist dieser Übergang ja fließend.

Sowas wie PointReader/Writer hätte als Membervariable natürlich den Path zur Datei, bzw. irgendeine Art von Device/File Handle. Eventuell noch eine Error Variable. Diese beiden Variablen sind natürlich nicht so streng gekoppelt wie xyz, aber gehören dennoch zusammen.

Eigentlich sind das ja Klassen die Verhalten simulieren. Sowas wie ein Widget. Mit Fenstergröße, Position, Farbe, Childwidgets.

Also ich halte mal fest, für Membervaribalen std::tuple std::array nutzen erscheint mir für Massendaten sinnvoll. Sonst nicht. Mal sehn ob sich das in der Praxis bewährt.

No Comments

No comments yet.

RSS feed for comments on this post.

Sorry, the comment form is closed at this time.

Powered by WordPress