AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Generics mit abgeleiten Klassen

Ein Thema von backdraft · begonnen am 19. Okt 2011 · letzter Beitrag vom 19. Okt 2011
Antwort Antwort
backdraft

Registriert seit: 19. Apr 2005
Ort: Hückeswagen
339 Beiträge
 
Delphi 11 Alexandria
 
#1

AW: Generics mit abgeleiten Klassen

  Alt 19. Okt 2011, 14:13
Ich hasse Delphi, wenn es nicht sagt in welcher Zeile der Fehler ist,
ABER Du hast recht, wenn ich die Zeile auskommentiere gehts...
OK, wie ist der Aufruf denn richtig?
Vielen Dank schonmal für die schnelle Hilfe ...
Oliver
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.340 Beiträge
 
Delphi 12 Athens
 
#2

AW: Generics mit abgeleiten Klassen

  Alt 19. Okt 2011, 14:26
Versuch mal FMyItem := T.Create; .

Entweder mußt du T.Crete schreiben oder das FMyItem nochmal nach TMyBase casten, vor der Zuweisung.
(gibt halt ein paar kleine Bugs in diesen Generics )
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
backdraft

Registriert seit: 19. Apr 2005
Ort: Hückeswagen
339 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: Generics mit abgeleiten Klassen

  Alt 19. Okt 2011, 14:42
Hallo,
klappt leider beides nicht.
Ich bekomm einen Fehlert und stehe auf T.Create

Meldung:
Neue Instanz kann ohne CONSTRUCTOR-Einschränkung in der Typparameterdeklaration nicht erstellt werden
Oliver
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.340 Beiträge
 
Delphi 12 Athens
 
#4

AW: Generics mit abgeleiten Klassen

  Alt 19. Okt 2011, 14:51
Laut Warnung will der Compiler sowas haben: TMyGeneric<T: constructor>=class .
k.A. ob man diese beiden Beschränkgen kombinieren kann,

Schön, daß man im XE jetzt auch direkt Typen angeben kann, aber so richtig funktioniert es dann wohl doch noch nicht.
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.629 Beiträge
 
Delphi 12 Athens
 
#5

AW: Generics mit abgeleiten Klassen

  Alt 19. Okt 2011, 15:15
Delphi-Quellcode:
  
type
  TMyGeneric<T: constructor, TMyBase> = class
  private
    FMyItem: T;
  public
    constructor Create;
    property MyItem: T read FMyItem;
  end;

constructor TMyGeneric<T>.Create;
begin
  inherited;
  FMyItem := T.Create;
end;
Geschickterweise macht man das TMyBase.Create dann auch noch virtual .
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
backdraft

Registriert seit: 19. Apr 2005
Ort: Hückeswagen
339 Beiträge
 
Delphi 11 Alexandria
 
#6

AW: Generics mit abgeleiten Klassen

  Alt 19. Okt 2011, 15:32
Hat geklappt,
vielen Dank für die schnelle Hilfe, also da muss man erstmal drauf kommen.
Wo steht sowas?
Oliver
  Mit Zitat antworten Zitat
Iwo Asnet

Registriert seit: 11. Jun 2011
313 Beiträge
 
#7

AW: Generics mit abgeleiten Klassen

  Alt 19. Okt 2011, 17:19
Von C# aus gesehen (von denen Emba wohl hier ein wenig abschreibt) ist das ein wenig logischer.

Und Metaklassen und Konstruktoren sind schon ein Thema für sich.

Unterm Strich: Man muss es einfach wissen oder jemanden kennen, der es weiss.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:35 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz