Einzelnen Beitrag anzeigen

Benutzerbild von Phoenix
Phoenix
(Moderator)

Registriert seit: 25. Jun 2002
Ort: Hausach
7.611 Beiträge
 
#6

Re: bestimmte Konstrukte gibt es in .Net nicht mehr->Alte

  Alt 8. Dez 2005, 09:57
Die Fragestellung ist eher: WAS willst Du portieren? Einen Treiber kannst Du vergessen, aber die sind eh nicht in Delphi schreibbar, von daher wird das eher nicht der Fall sein.

Einen String gibt es auch in .NET. Allerdings nicht als reservierter Speicherbereich in dem irgendwo intern ein Array of Char liegt sondern als Objekt.

Move gibt es nicht mehr. In .NET arbeitest Du vollkommen Typsicher immer auf Objekten und nicht direkt im Speicher (macht die ganze Sache deutlich sicherer und einfacher zu handhaben).

Packed Records benutzt(e) man doch nur dazu, um einen Record kleiner zu machen, da dann die einzelnen Felder des Records nicht mehr ausgerichtet werden sondern direkt hintereinandergeklatscht werden. Das hat ausschliesslich was mit Optimierung zu tun bzw. mit gefährlicher Programmierung wenn man mit Pointern darauf rumspielt

Also: Ersatz für Packed Records: Entweder ein normaler Record oder ein Objekt mit dessen Eigenschaften.
Ersatz für String: Das String-Objekt.
Wenn Du mit move von einem String/record in einen anderen kopieren willst dann geht das ohne weiteres mit normalen Zuweisungen.

Von daher sollte das kein Problem sein.
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org
  Mit Zitat antworten Zitat