Einzelnen Beitrag anzeigen

Benutzerbild von negaH
negaH

Registriert seit: 25. Jun 2003
Ort: Thüringen
2.950 Beiträge
 
#7

Re: verschiedene Sets an Prozedur übergeben

  Alt 5. Sep 2006, 15:06
Delphi-Quellcode:
type
TMyClass1 = (a,b,c,d);
TMyClass2 = (e,f,g,h);
TMySet1 = set of TMyClass1;
TMySet2 = set of TMyClass2;
probiere das mal

Delphi-Quellcode:
type
  TMyClass = (a,b,c,d, e,f,g,h);
  TMySet = set of TMyClass;

const
  Set1: TMySet = [a,b,c,d];
  Set2: TMySet = [e,f,g,h];

var
  Set: TMySet;
begin
  if Set * Set1 <> [] then ;
  
end;
Statt also 2 Set zu deklarieren benutzt du nur eine gemeinsamme Menge als Gesamtmenge und dann rechnest du intern mit konstanten Intersections = Teilmengen. Das dürfte konzeptionell sauberer sein, auch performanter und zudem noch Speicher sparender

2 Sets mit 4 Elementen benötigen 2 * 1 Byte und pro Byte werden nur 2 Bits verbraucht -> 2^2 = 4. Bei einem Set mit 8 Elementen braucht man 3 Bits = 2^3 = 8 ergo nur 1 Byte Speicher.

Gruß Hagen
  Mit Zitat antworten Zitat