001
02.11.2004, 13:31 Uhr
ao
(Operator)
|
Weil es eine static-Methode ist, hast du diese beiden Möglichkeiten.
Und es funktioniert nur, wenn GetDataFromPort nur Eigenschaften und Methoden der *Klasse* CData verwendet (also Member, die selber static sind) und keine Eigenschaften und Methoden der *Instanz* data (das wären Member, die nicht static sind). Andernfalls kriegst du Compilerfehler beim Übersetzen der CData-Implementierung.
Für GetDataFromPort ist es gleichgültig, ob du 1. oder 2. verwendest.
Ich würde so entscheiden: Wenn ich in der Connect.cpp an der fraglichen Stelle eine fertig konstruierte CData-Instanz habe, dann verwende ich sie auch und rufe data.GetDataFromPort auf.
Wenn ich keine Instanz habe und nur für den einen Aufruf eine erzeugen müsste, dann tue ich das nicht, sondern verwende CData::GetDataFromPort. Das erspart mir die (möglicherweise aufwändige) Konstruktion einer CData-Instanz.
ao |