Einzelnen Beitrag anzeigen

Sequitar

Registriert seit: 8. Jan 2016
74 Beiträge
 
Delphi 10.4 Sydney
 
#1

Classen Typinfo GUID & Generics. Nicht eindeutig identifizierbar?

  Alt 13. Mai 2019, 00:42
Delphi-Quellcode:
Class Procedure Tfactory.Reg(Cl: TClass);
Begin
  If Assigned(Fclassregister)
  Then
  Begin
    Var
    Info := Ptypeinfo(Cl.ClassInfo);
    If Assigned(Info)
    Then
      Try
        Var
        Guid := Info^.TypeData.GUID;
        Fclassregister.Reg(Guid, Cl);
      Finally
      End;
  End;
End;

Tfactory.Reg([taclass<String, String>, taclass<String, Byte>,
  taclass<String, Integer>, taclass<Byte, Byte>]);
Hallo, ich bin eben auf ein Problem mit der eindeutigen idenzifizierung meiner registrierten Klassen gestoßen..
Bisher hab ich in einem dictionary die paare (guid,class)registriert, wobei die guid wie oben dargestellt erzeugt/abgefragt wurde.
Ich ging davon aus,die seien systemweit eindeutig und daher besser geeignet als irgendwelche selbst erstellten strings etc ?

nun habe ich den fall, dass ich mehrerere generische klassen registrieren - und auch wieder abfragen will, aber hier scheinen die klassen guids immer gleich zu sein? jedenfalls werden bereits bestehende registrierungen dabei vom neuen generischen typ überschrieben...pale:

wie kann ich nun auch solche generischen klassen eindeutig zuordnen. sonst hab ich bald chaos
  Mit Zitat antworten Zitat