AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Implementation-Teil auf mehrere Dateien verteilen
Thema durchsuchen
Ansicht
Themen-Optionen

Implementation-Teil auf mehrere Dateien verteilen

Ein Thema von DeddyH · begonnen am 30. Jul 2008 · letzter Beitrag vom 30. Jul 2008
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.624 Beiträge
 
Delphi 12 Athens
 
#1

Implementation-Teil auf mehrere Dateien verteilen

  Alt 30. Jul 2008, 20:54
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?
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Implementation-Teil auf mehrere Dateien verteilen

  Alt 30. Jul 2008, 20:55
Du musst den Namen der Datei angeben
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.624 Beiträge
 
Delphi 12 Athens
 
#3

Re: Implementation-Teil auf mehrere Dateien verteilen

  Alt 30. Jul 2008, 20:55
Was meinst Du damit?
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: Implementation-Teil auf mehrere Dateien verteilen

  Alt 30. Jul 2008, 20:57
{$I datei1.inc}
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.624 Beiträge
 
Delphi 12 Athens
 
#5

Re: Implementation-Teil auf mehrere Dateien verteilen

  Alt 30. Jul 2008, 21:01
Laut Hilfe soll doch mit {$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]
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#6

Re: Implementation-Teil auf mehrere Dateien verteilen

  Alt 30. Jul 2008, 21:04
Wenn man die Endung weglässt, wird .pas angenommen. Die Inkludedatei wird in die Unit eingefügt, ähnlich einem Makro
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.624 Beiträge
 
Delphi 12 Athens
 
#7

Re: Implementation-Teil auf mehrere Dateien verteilen

  Alt 30. Jul 2008, 21:07
Soll heißen, die Direktrive wird vom Precompiler durch den Inhalt der Datei ersetzt?
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#8

Re: Implementation-Teil auf mehrere Dateien verteilen

  Alt 30. Jul 2008, 21:07
Ja
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von Phoenix
Phoenix
(Moderator)
Online

Registriert seit: 25. Jun 2002
Ort: Hausach
7.639 Beiträge
 
#9

Re: Implementation-Teil auf mehrere Dateien verteilen

  Alt 30. Jul 2008, 21:08
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.
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.624 Beiträge
 
Delphi 12 Athens
 
#10

Re: Implementation-Teil auf mehrere Dateien verteilen

  Alt 30. Jul 2008, 21:09
Klappt aus unerfindlichen Gründen eh nicht bei mir
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 13:29 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