/ Forside / Teknologi / Udvikling / Delphi/Pascal / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Delphi/Pascal
#NavnPoint
oldwiking 603
jrossing 525
rpje 520
EXTERMINA.. 500
gandalf 460
gubi 270
DJ_Puden 250
PARKENSS 230
technet 210
10  jdjespers.. 200
Factories i delphi
Fra : Klaus Petersen


Dato : 16-05-05 22:31

Hej.

Jeg har et mindre problem med mit delphi program.

Jeg har nogle klasser med tilhørende interfaces.
Nu vil jeg gerne tvinge brugeren af klasserne til at bruge interfacet, dvs.
gøre constructoren protected og lave et factory til at skabe dem.

Problemet er bare, at der ikke er noget der hedder internal eller friend
classes i delphi.

Så spørgsmålet er... hvad gør man så?

mvh.
Klaus.



 
 
Niels Martin Hansen (18-05-2005)
Kommentar
Fra : Niels Martin Hansen


Dato : 18-05-05 01:08

Klaus Petersen wrote:
> Jeg har nogle klasser med tilhørende interfaces.
> Nu vil jeg gerne tvinge brugeren af klasserne til at bruge interfacet, dvs.
> gøre constructoren protected og lave et factory til at skabe dem.
>
> Problemet er bare, at der ikke er noget der hedder internal eller friend
> classes i delphi.
>
> Så spørgsmålet er... hvad gør man så?

Faktisk ganske simpelt: Alting erklæret i samme unit har fuld adgang til
hinandens private data. F.eks. er følgende lovligt:

unit abc;

interface

type
TFoo = class
private
b: integer;
end;

TBar = class
public
function GetFoo: TFoo;
end;

implementation

function TBar.GetFoo: TFoo;
begin
Result := TFoo.Create;
Result.b := 123;
end;

end.

/Niels

Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408914
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste