Ands
Hvad er foreskellen mellem Private og Public???
Kan man lave en variabel i en form, og derefter bruge den igen i en anden form???
f.eks.
private
Hejsa:integer;
procedure form1.button1click
begin
Hejsa:=Hejsa+1;
end;
procedure form2.button1click
begin
Hejsa:=Hejsa+1;
end;
nej.
Private betyder, at det kun er formen hvor denne er defineret på, der har adgang til den.
-------------------------------
Hilsen Jimmi Westeberg
http://www.westsworld.dk
Hej,
En lille rettelse til oventående.
Alle funktioner og variabler under private sektionen kan kun bruges i den klasse de er oprettet i med undtagelse af andre klasser/funktioner i samme namespace (unit).
F.eks.
unit test1;
interface
type
TMinKlasse = class(TObject)
private
FMinVar : Integer;
public
procedure Test;
end;
implementation
procedure TMinKlasse.Test;
begin
// Vores egne private variabler og funktioner kan vi altid tilgå.
FMinVar := 10;
end;
procedure AlmindeligFunktion;
var
MK : TMinKlasse;
begin
MK := TMinKlasse.Create;
MK.Test; // nu er FMinVar sat til 10.
MK.FMinVar := 20; // Her tilgår vi en privat variabel uden for klassen.
// Men dette kan vi kun fordi vi er i samme namespace som klasse definitionen.
MK.Free;
end;
end.
Hvis du tilgår TMinKlasse fra en anden unit kan du selfølgelig ikke tilgå FMinVar direkte (som Jimmi så rigtigt forklarede før).
/Michael.
/Michael.