/ Forside / Teknologi / Udvikling / Delphi/Pascal / Nyhedsindlæg
Login
Brugernavn

Kodeord


Reklame
Top 10 brugere
Delphi/Pascal
#NavnPoint
oldwiking 603
jrossing 525
rpje 520
EXTERMINA.. 500
DJ_Puden 250
PARKENSS 230
technet 210
jdjespers.. 200
VMEK 153
10  lavang 136
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 : 177821
Tips : 31980
Nyheder : 719565
Indlæg : 6410982
Brugere : 218912

Månedens bedste
Årets bedste
Sidste års bedste