Re: String-Klasse?
Zitat:
Zitat von jbg
Zitat:
C-String, Delphi-AnsiString, LPSTR (PChar)
|
Das ist schonmal nur ein Typ.
|
Aua, aufhören. Das tut echt weh!
Vielleicht solltest du dir doch lieber nochmal das Wissen anlesen. C-String und PChar sind gleich, ja - mein Fehler -, aber der Delphi-AnsiString ist ein komplett anderes und compilergestütztes Konstrukt.
+ 2 Stringtypen
Zitat:
Zitat von jbg
Zitat:
BSTR, Delphi-WideString, LPWSTR (PWideChar)
|
Und das ein weiterer
|
Ja, ein weiterer Irrtum. BSTR ist genau wie der Delphi-WideString ein "counted string", wobei wie beim Delphi-WideString die Offsets negativ sind. Unterschied ist die interne Struktur die an diesen negativen Offsets liegt. Im Falle von BSTR ist dies nur ein DWORD. Beim Delphi-WideString (und auch AnsiString) sind dies noch mehr Member, Reference Count und Reservierter Speicher, soweit ich mich entsinne. Es handelt sich also tatsächlich um 3 verschiedene Stringtypen.
Übrigens: BSTR != OLESTR. LPOLESTR entspricht LPWSTR!
+ 3 Stringtypen
Richtig, ist auch ein anderer Typ.
+ 1 Stringtyp
Zitat:
Zitat von jbg
Zitat:
UNICODE_STRING, STRING, ANSI_STRING, OEM_STRING ...
|
Toll, dann füg auch noch MYFAVORITE_SELF_CREATED_STRING hinzu.
|
Polemik bringt nichts, denn diese Typen wirst du sogar in deinem PSDK finden. Dort ist zB UNICODE_STRING als LSA_UNICODE_STRING deklariert.
+ 1 Stringtyp (weil sich die Pointertypisierung nur unterscheidet bin ich mal großzügig)
= 7 Stringtypen
Wohlgemerkt, dies sind nur jene, die mir auf die Schnelle einfielen. Es könnte noch andere geben.
Zitat:
Zitat von jbg
Und wenn man es genau nimmt, dann gibt es nur einen Typ von String. Alles andere ist reine Interpretation.
|
Aua.
Zitat:
Zitat von tommie-lie
Und wenn Olli mit C-String den Typ String aus der C++-Standardbibliothek meint, ist das wieder was anderes als der Delphi-AnsiString und der LPSTR.
|
Nein, ich meinte tatsächlich den der PChar entspricht. War mein Fehler. Ansonsten hätte ich std::string geschrieben. Ist aber eine Klasse genau wie CString aus den MFC oder wxString aus den wxWidgets.
Zitat:
Zitat von tommie-lie
Zugegeben, zu BSTR fällt mir im Augenblick nichts ein
|
Ist counted.
Zitat:
Zitat von malo
Wenn man es genau nimmt, dann gibt es keine Strings. Strings werden in Delphi nur durch Compilermagic erstellt. Im Grunde sind das alles nur Char-Arrays ;)
|
Dann darf man es aber nicht zu genau nehmen ;)
Zitat:
Zitat von Gandalfus
Das ist kein Problem sondern ein Feature.
|
:lol:
|