Einzelnen Beitrag anzeigen

Chewie

Registriert seit: 10. Jun 2002
Ort: Deidesheim
2.886 Beiträge
 
Turbo Delphi für Win32
 
#4

Re: C++ --> Delphi Übersetzen

  Alt 16. Jan 2005, 16:19
Das sind einfach die Definition zweier Objekte des entsprechenden Typs. Da Objekte in C++ Werttypen sind, werden so statische Objekte angelegt, die auf dem Stack liegen und deswegen auch nicht manuell freigegeben werden.
In Delphi geht das nicht (OK, mit den alten TurboPascal-Objekten schon, aber lass die Finger weg von denen), also musst du den Konstruktor zur Laufzeit explizit aufrufen:

Code:
CComBSTR testid(searchID.length()+1,(const char*)searchID);  /C++

test := CComBSTR.Creazte(searchId.length + 1, PChar(searchId); //Delphi
Auch wenn ich das nicht ganz kapiere. searchId ist offensichtlich ein Objekt, im zweiten Parameter wird dieses aber in einen Zeiger auf ein Zeichen gecastet.
Ich weiß zwar nicht Bescheid über den Aufbau von C++-Klassen, aber nach meinem dafürhalten wird dort der Zeiger auf die VMT übergeben?
Martin Leim
Egal wie dumm man selbst ist, es gibt immer andere, die noch dümmer sind
  Mit Zitat antworten Zitat