AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein bestimmte Konstrukte gibt es in .Net nicht mehr->Alternative

bestimmte Konstrukte gibt es in .Net nicht mehr->Alternative

Ein Thema von Alex_ITA01 · begonnen am 6. Dez 2005 · letzter Beitrag vom 8. Dez 2005
Antwort Antwort
Alex_ITA01

Registriert seit: 22. Sep 2003
1.115 Beiträge
 
Delphi 12 Athens
 
#1

bestimmte Konstrukte gibt es in .Net nicht mehr->Alternat

  Alt 6. Dez 2005, 11:04
Hallo erstmal,
ich habe nur eine kurze Frage. Stimmt es, dass es in Delphi 8 (bzw. 2005 .Net) folgende Funktionen bzw. Konstrukte nicht mehr gibt?

- Move
- packed record
- String

Wenn das stimmt, was für Alternativen gibt es dafür?
Ich hoffe ihr könnt mir da helfen...
MFG Alex
Let's fetz sprach der Frosch und sprang in den Mixer
  Mit Zitat antworten Zitat
Alex_ITA01

Registriert seit: 22. Sep 2003
1.115 Beiträge
 
Delphi 12 Athens
 
#2

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

  Alt 6. Dez 2005, 14:11
Ich überlege mir nämlich, meine Anwendungen unter .Net zu compilieren (bzw. neu zu erstellen) aber wollte erst sichergehen, ob wirklich "alles" klappt.
Ich hoffe ihr könnt mir ein Rat geben, wie ihr die Sachen löst, bzw. was die Alternativen sind.

Danke schonmal im voraus,
MFG Alex
Let's fetz sprach der Frosch und sprang in den Mixer
  Mit Zitat antworten Zitat
alzaimar
(Moderator)

Registriert seit: 6. Mai 2005
Ort: Berlin
4.956 Beiträge
 
Delphi 2007 Enterprise
 
#3

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

  Alt 6. Dez 2005, 14:21
"unter .Net" mal eben neu kompilieren, wird nicht klappen. 'Packed Records' lassen sich durch 'Records' ersetzen, wie das unter .Net heisst, weiss ich nicht, aber 'Packed Records' gehen schon länger nicht richtig, sie sind sowieso überflüssig, das nicht mehr korrekt umgesetzt. Einen 'String' sollte es geben. 'Move' fällt weg, da es wohl keine Pointer mehr gibt(?).

Du musst schon Einiges anpassen und verändern, denke ich
"Wenn ist das Nunstruck git und Slotermeyer? Ja! Beiherhund das Oder die Flipperwaldt gersput!"
(Monty Python "Joke Warefare")
  Mit Zitat antworten Zitat
Alex_ITA01

Registriert seit: 22. Sep 2003
1.115 Beiträge
 
Delphi 12 Athens
 
#4

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

  Alt 8. Dez 2005, 09:27
ich [pushe] jetzt einfach mal
Wisst ihr etwas von den Alternativen oder wie ich das "Problem" umgehen kann?
MFG Alex
Let's fetz sprach der Frosch und sprang in den Mixer
  Mit Zitat antworten Zitat
Benutzerbild von maximov
maximov

Registriert seit: 2. Okt 2003
Ort: Hamburg
548 Beiträge
 
Delphi 2005 Professional
 
#5

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

  Alt 8. Dez 2005, 09:57
Das problem sind deine erwartungen - und nicht .Net. Wirf sie über bord und probiers einfach aus, wie weit du kommst.
mâxîmôv.

{KDT}
  Mit Zitat antworten Zitat
Benutzerbild von Phoenix
Phoenix
(Moderator)

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

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

  Alt 8. Dez 2005, 10: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
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:20 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz