![]() |
Re: MS-DOS-Anwendung mit Delphi-Klassen?
TP kennt aber nur die alte Pascal-OOP (Object).
|
Re: MS-DOS-Anwendung mit Delphi-Klassen?
ja, die vererbung wird auch schon unterstützt. du musst hierfür nur das wort class gegen object austauschen. z.b.
Delphi-Quellcode:
die vererbung war seit tp5.5 implementiert. andere features kammen aber erst zu einem späteren zeitpunkt hinzu, so, dass nicht mehr mit der dereferenzierung auf die methoden zugegriffen werden muss, dafür um das auseinanderzuhalten, hatte dann borland das schlüsselwort object gegen class getauscht (da fielen dann auch new und dispose weg).
type ttest = object
constructor init; destructor done; procedure main; end; punkt = object(ttest) x, y: integer; end; kreis = object(punkt) radius: integer; end; wie gesagt, wenn man sich an den PASCAL sprachvorrat hält, und nicht die delphi spezifischen erweiterungen verwendet, so kann man auch mit delphi programme entwickeln, welche auf DOS ebene rekompiliert weden können. hier muss man aber auch mit den units aufpassen... das beispiel wurde mit d2006 erstellt und somit ist die unit sysutils vorhanden, diese gab es aber zu TP's zeiten nicht. auch gibts z.b. keine class operatoren, operator overloading, properties, etc.... allso alles was das leben schön macht... :-) pascal hat sich ja auch weiterentwickelt und nicht grad zum schlechteren :-) grüsse und noch einen schönen sonntag. |
Re: MS-DOS-Anwendung mit Delphi-Klassen?
Zitat:
|
Re: MS-DOS-Anwendung mit Delphi-Klassen?
Hallo,
natürlich ist es möglich, die "alten" Objekte zu verwenden, sie werden von allen bisherigen Delphi-Version unterstützt. Eine (Rück-)Portierung von vorhandenem Object-Pascal-Quellcode auf den Stand von Delphi 1 oder gar Turbo Pascal dürfte allerdings mit einem hohen Aufwand verbunden sein: - neuere Sprachelemente dürfen nicht eingesetzt werden (z.B. dynamische Arrays, Interfaces,...) - es dürfen nur ShortStrings verwendet werden (max. 255 Zeichen) - Sichtbarkeits-Direktiven existieren nicht (ganz oder teilweise) - Properties existieren nicht (Turbo Pascal) - Überschreiben von Routinen mit VIRTUAL statt OVERRIDE (Fehlerquelle!) - 64-KByte-Grenze für Code und Daten (jedenfalls ohne Overlays, XMS, EMS o.ä.) Dies sind nur einige Punkte, die zu beachten sind. Eine Verwendung der genannten DOS-Extender ist sicher mit einem anfänglichen Aufwand verbunden. Wenn aber die ersten Hürden überwunden sind, kann man mit dieser Kombination recht komfortabel sehr komplexe Anwendungen für DOS entwickeln. Immo Waches Dokumentation zu DWPL zeigt, daß diese Lösung im industriellen Bereich eingesetzt wurde - und vielleicht auch noch wird. Neuentwicklungen werden wahrscheinlich eher auf Windows CE oder Linux aufsetzen. Gruß Hawkeye |
Re: MS-DOS-Anwendung mit Delphi-Klassen?
Man könnte auch die Lauffähigkeit auf FPC testen.
|
Re: MS-DOS-Anwendung mit Delphi-Klassen?
Zitat:
es gibt doch noch TP, warum sollte man da auf dos extender zurückgreifen? frag mich aber, wieso soll das noch DOS sein? das system ist doch praktisch ausgestorben.... |
Re: MS-DOS-Anwendung mit Delphi-Klassen?
Zitat:
Zitat:
Vielen Dank, jetzt hab ich erstmal ganz viel zum Basteln :coder: Gruß Malte |
Re: MS-DOS-Anwendung mit Delphi-Klassen?
Zitat:
Die alten, mit TP5 eingeführte OOP mit dem Schlüsselwort OBJECT wird von allen (nicht .Net)Delphiversionen unterstützt. Zitat:
![]() } |
Re: MS-DOS-Anwendung mit Delphi-Klassen?
@grenzgaenger: Was hat TP mit Delphi2006 zu tun? Die Turbos haben mit TP ja wohl außer dem Namen rien garnix zu tun.
|
Re: MS-DOS-Anwendung mit Delphi-Klassen?
doch, haben sie. die codes aus TP lassen sich in d2006 kompilieren...
@mkinzler: kommt drauf an, was du als .Net-delphi bezeichnest.. in D2005 wurde, soviel ich weiss, die OBJECT unterstützung herausgenommen... zu D6 war sie zuvor noch drin. muss mich daher teilweise korrigieren. grüsse und noch 'n schönen sonntag. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:20 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz