Konstruktor Syntax Frage
-
Hallo,
Ich habe hier folgenden Code, den ich nicht ganz verstehe:
RecordSnapshotClient::RecordSnapshotClient(RTRSnapshotRecordService& service, const char *symbol) : _record(0) { _record = &(service.snapshotRecord(symbol)); _record->addClient(*this); }Was bedeutet das ": _record(0)" ?
_record ist ein member von RecordSnapshotClient:protected: RTRSnapshotRecord *_record;Vielen Dank für jede Antwort!
-
Das nennt sich Initializer - list. Die Membervariable _record wird in diesem Fall noch vor Eintritt in den Constructor-Body mit 0 initialisiert.
In diesem Fall würde ich sagen ist _record(0) unnötig da der variablen im Body ja sowieso etwas zugewiesen wird.
Kurt
-
Hallo,
_record ist ein Zeiger auf RTRSnapshotRecord und mit "_record(0)" wird dieser Zeiger in der Initialisierungsliste (also vor Eintritt in den Rumpf des Konstruktors) zuersteinmal mit 0 initialisiert./edit: Zu langsaaaaaammmmmmmmm...

Caipi
-
...an die schnellen und die zu langsamsn
