![]() |
private / public
Hallo
ich habe in meiner unit funktionen die ich gerne public und private deklarieren möchte. Jetzt habe ich aber so meine probleme mit der Struktur des ganzen. wie muss ich das ganze deklarieren das gewisse funktionen gegen aussen sichtbar sind und andere nicht? so geht es nicht. :gruebel: type private { Private-Deklarationen } public { Public-Deklarationen } end; |
Re: private / public
Du meinst also tatsächlich funktionen und nicht Methoden einer Klasse?
Dann ist das ganz einfach:
Delphi-Quellcode:
unit MeineUnit;
interface // hier die funktionen erstmal nur deklarieren // das sind die, die für andere Units sichtbar sind. z.B. function VonAussenAufrufbar(arg: string): string; implementation // die implementation function VonAussenAufrufbar(arg: string): string; begin result := arg; end; // diese hier ist nur intern verwendbar function VonAussenNichtSichtbar(arg: string): string; begin result := arg; end; end. |
Re: private / public
danke für die schnelle antwort.
wo liegt der unterschied zur methode? |
Re: private / public
Methoden sind Funktionen oder Prozduren, die zu einer Klasse oder einem Objekt gehören.
|
Re: private / public
Dann komm ich aber bei deiner frage nicht ganz draus.
Zitat:
|
Re: private / public
Wenn du den Begriff "Funktion" abgesetzt vom Begriff "Methode" verwendest, implizierst du, dass du globale Funktionen und keine Klassenfunktion (also Methoden) meinst.
|
Re: private / public
ok dann habe ich mich falsch ausgedrückt! Da ich eine Klasse habe und demnach methoden verwende.
|
Re: private / public
Dann gilt das hier:
Delphi-Quellcode:
So sollte das dann tun.
unit MeineUnit;
interface type MeineKlasse = Class(TObject) private function PrivateMethode(arg: string): string; protected function ProtectedMethode(arg: string): string; public constructor Create; function PublicMethode(arg: string): string; end; implementation constructor MeineKlasse.Create; begin // nix zu tun... end; function MeineKlasse.PrivateMethode(arg: string): string; begin result := arg; end; function MeineKlasse.ProtectedMethode(arg: string): string; begin result := arg; end; function MeineKlasse.PublicMethode(arg: string): string; begin result := arg; end; |
Re: private / public
danke, klappt soweit ganz gut
|
Re: private / public
Siehe dazu auch mein Klassen Tutorial:
![]() |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:47 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 by Thomas Breitkreuz