Autor Beitrag
FinnO
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1331
Erhaltene Danke: 123

Mac OSX, Arch
TypeScript (Webstorm), Kotlin, Clojure (IDEA), Golang (VSCode)
BeitragVerfasst: So 24.05.09 23:12 
Hi Leute,

Ich habe viele gleichartige Klassen, die alle den gleichen Vorfahr haben. Kann ich jetzt einen Typ o.ä. definieren, der Alle klassen beinhaltet?

qasi:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
type
  TFoo = class
  private
  
  public
    bla : byte;
  end;

  TFooKind=class(TFoo)
  private

  public
    blub : String;
  end;

  TBar=class(TFoo)
  private
    Strump : Boolean;
  public
  
  end;


Dass ich jetzt einen Typ o.Ä. habe, in den ich alle Klassen packen kann? Also sozusagen:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
var
  FooFamily : Array of TOberbegriff;
  Foo       : TFoo;
  Bar       : TBar;
  FooKind   : TFooKind;
begin
  FooFamily[index] := Bar;
  FooFamily[index+2]:= FooKind;
end;
Xentar
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2077
Erhaltene Danke: 2

Win XP
Delphi 5 Ent., Delphi 2007 Prof
BeitragVerfasst: So 24.05.09 23:22 
user profile iconFinnO hat folgendes geschrieben Zum zitierten Posting springen:
Dass ich jetzt einen Typ o.Ä. habe, in den ich alle Klassen packen kann? Also sozusagen:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
var
  FooFamily : Array of TOberbegriff;
  Foo       : TFoo;
  Bar       : TBar;
  FooKind   : TFooKind;
begin
  FooFamily[index] := Bar;
  FooFamily[index+2]:= FooKind;
end;


Wenn ich mich recht erinner, kann man den gemeinsamen Vorfahr als Typ nehmen, also in deinem Fall ein array of TFoo.

_________________
PROGRAMMER: A device for converting coffee into software.
Yogu
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2598
Erhaltene Danke: 156

Ubuntu 13.04, Win 7
C# (VS 2013)
BeitragVerfasst: So 24.05.09 23:23 
user profile iconFinnO hat folgendes geschrieben Zum zitierten Posting springen:
ausblenden Delphi-Quelltext
 
2:
{ ... }
  FooFamily : Array of TOberbegriff;

TOberbegriff wäre in deinem Fall schlicht und einfach TFoo :D

Mist, zu spät :autsch:
FinnO Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1331
Erhaltene Danke: 123

Mac OSX, Arch
TypeScript (Webstorm), Kotlin, Clojure (IDEA), Golang (VSCode)
BeitragVerfasst: So 24.05.09 23:35 
schön, wenn programmieren so einfach ist! :D