Buchempfehlung
MySQL kurz & gut
MySQL kurz & gut
Das preiswerte Taschen- buch stellt MySQL-rele- vante Inhalte systematisch und knapp dar, sodass es sich optimal zum Nach- schlagen beim Pro- grammieren eignet. [Mehr Infos...]
FreeBASIC-Chat
Es sind Benutzer im FreeBASIC-Chat online.
(Stand:  )


Referenz - PRIVATE (Klausel)

Referenz-Navigation

 

Syntax: PRIVATE { SUB | FUNCTION } Name (Parameterliste)
Typ: Klausel
Kategorie: Programmorganisation

Siehe SUB/FUNCTION zu weiteren Details zur Syntax.

Ein Programm kann aus mehreren Modulen, d.h. aus mehreren BAS-Dateien bestehen.
Welche Dateien zum Projekt gehören sollen, wird dem Compiler in der Kommandozeile mitgeteilt:

fbc Optionen Dateiname1 Dateiname2 ...

(Siehe dazu BefehlsreferenzeintragDer Compiler)

Aus einem bestimmten Modul können dabei immer alle Prozeduren aufgerufen werden, die sich in diesem befinden. Prozeduren aus anderen Modulen können nur dann aufgerufen werden, wenn diese Prozeduren PUBLIC sind. PRIVATE Prozeduren hingegen können nur aus dem Modul heraus aufgerufen werden, in dem sie sich befinden.

Es dürfen in mehreren Modulen mehrere Prozeduren mit demselben Bezeichner vorhanden sein, sofern diese PRIVATE sind.

Beispiel:
Ein Projekt besteht aus den Modulen A und B.
Das Modul A besitzt die Prozeduren Priv1 (PRIVATE), Priv2 (PRIVATE) und Pub1 (PUBLIC).
Das Modul B besitzt die Prozeduren Priv1 (PRIVATE), Priv2 (PRIVATE) und Pub2 (PUBLIC).
Wird gerade Code aus Modul A ausgeführt, so können Priv1 aus A, Priv2 aus A, Pub1 aus A und Pub2 aus B aufgerufen werden. Priv1 aus B und Priv2 aus B können nicht aufgerufen werden.
Wird gerade Code aus Modul B ausgeführt, so können Priv1 aus B, Priv2 aus B, Pub1 aus A und Pub2 aus B aufgerufen werden. Priv1 aus A und Priv2 aus A können nicht aufgerufen werden.

PRIVATE legt explizit für eine SUB/FUNCTION fest, dass diese PRIVATE sein soll, unabhängig vom gesetzten Standard (siehe OPTION; beachten Sie dazu auch die BefehlsreferenzeintragFB-Dialektformen).
Auf PRIVATE-Prozeduren kann nur das Modul zugreifen, in dem sich die Prozedur befindet; PUBLIC-Routinen sind allen Modulen zugänglich.

Die PRIVATE-Klausel muss vor der SUB-Anweisung stehen, darf jedoch nicht in der DECLARE-Anweisung stehen.

Beispiel:
Kompilieren Sie diese Dateien mit folgender Kommandozeile:

fbc PrivatePublicTest1.bas PrivatePublicTest2.bas

' PrivatePublicTest1.bas
DECLARE SUB PrivateSub ()
DECLARE SUB PublicSub  ()

PublicSub
PrivateSub

PRIVATE SUB PrivateSub ()
   PRINT "PrivateSub in PrivatePublicTest1.bas"
END SUB

'--------------------------------------'

' PrivatePublicTest2.bas
DECLARE SUB PrivateSub ()
DECLARE SUB PublicSub  ()

PRIVATE SUB PrivateSub ()
   PRINT "PrivateSub in PrivatePublicTest2.bas"
END SUB

PUBLIC SUB PublicSub ()
   PRINT "PublicSub in PivatePublicTest2.bas
   PrivateSub
END SUB

Unterschiede zu QB:
neu in FreeBASIC

Siehe auch:
BefehlsreferenzeintragPRIVATE (Schlüsselwort), BefehlsreferenzeintragPUBLIC (Klausel), BefehlsreferenzeintragOPTION, BefehlsreferenzeintragDECLARE, BefehlsreferenzeintragSUB, BefehlsreferenzeintragFUNCTION


Zusätzliche Informationen und Funktionen
  • Der Referenzeintrag wurde am 08.08.2007 von Redakteurnemored angelegt.
  • Die aktuellste Version wurde am 30.08.2008 von Redakteurnemored gespeichert.
  Versionen Versionen