Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Implementation-Teil auf mehrere Dateien verteilen (https://www.delphipraxis.net/118060-implementation-teil-auf-mehrere-dateien-verteilen.html)

DeddyH 30. Jul 2008 20:54


Implementation-Teil auf mehrere Dateien verteilen
 
Ich meine, einmal gesehen zu haben, dass man den Implementation-Teil einer Unit in eine weitere Datei abspalten konnte, die dann per {$I Datei} eingebunden wird. Leider habe ich da syntaktische Probleme. Kann mir mal jemand einen kleinen Schubs geben? Nicht funktionierendes Fantasiebeispiel:
Delphi-Quellcode:
unit Gesamt;

interface
uses Windows;

type

TMyFirstClass = class
  procedure TuWas;
end;

TMySecondClass = class
  procedure TuWas;
end;

implementation

{$I MyFirstClass}
{$I MySecondClass}
end.
Kann man das so machen, und wenn ja, wie müssen einzubindenden Dateien genau aussehen?

mkinzler 30. Jul 2008 20:55

Re: Implementation-Teil auf mehrere Dateien verteilen
 
Du musst den Namen der Datei angeben

DeddyH 30. Jul 2008 20:55

Re: Implementation-Teil auf mehrere Dateien verteilen
 
Was meinst Du damit?

mkinzler 30. Jul 2008 20:57

Re: Implementation-Teil auf mehrere Dateien verteilen
 
Delphi-Quellcode:
{$I datei1.inc}

DeddyH 30. Jul 2008 21:01

Re: Implementation-Teil auf mehrere Dateien verteilen
 
Laut Hilfe soll doch mit
Delphi-Quellcode:
{$I MyFirstClass}
die MyFirstClass.pas eingebunden werden, oder? Was mich interessiert ist, ob damit eine reine Textersetzung vorgenommen wird oder nicht. Ich hatte versucht, den Implementationsteil (und nichts anderes) in die MyFirstClass.pas zu schreiben, da meckert der Compiler das fehlende "unit MyFirstClass;" an. Schreibe in die Zeile rein, heißt es "Deklaration erwartet, aber unit gefunden".

[edit] Umbenennen von pas in inc und Änderung der Direktrive haben nichts bewirkt. [/edit]

mkinzler 30. Jul 2008 21:04

Re: Implementation-Teil auf mehrere Dateien verteilen
 
Wenn man die Endung weglässt, wird .pas angenommen. Die Inkludedatei wird in die Unit eingefügt, ähnlich einem Makro

DeddyH 30. Jul 2008 21:07

Re: Implementation-Teil auf mehrere Dateien verteilen
 
Soll heißen, die Direktrive wird vom Precompiler durch den Inhalt der Datei ersetzt?

mkinzler 30. Jul 2008 21:07

Re: Implementation-Teil auf mehrere Dateien verteilen
 
Ja

Phoenix 30. Jul 2008 21:08

Re: Implementation-Teil auf mehrere Dateien verteilen
 
Ja, das funktioniert eigentlich.
Aber: Nein, das solltest Du lieber nicht machen.

Warum? Ganz einfach: Wenn Du eine Unit mit diesem 'Hilfsmittelchen' in verschiedene Dateien aufspaltest funktionieren z.B. die Refactorings nicht mehr. Das heisst die ganzen netten features wie ein Property / eine Methode durch das ganze Projekt umbenennen oder mein Lieblingsrefactoring 'Methode extrahieren' sind dann passé.

Also mach es lieber richtig: Eine Klasse -> Eine Unit -> eine .pas.

DeddyH 30. Jul 2008 21:09

Re: Implementation-Teil auf mehrere Dateien verteilen
 
Klappt aus unerfindlichen Gründen eh nicht bei mir :gruebel:


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:28 Uhr.
Seite 1 von 2  1 2      

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 by Thomas Breitkreuz