AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi Array mit Instanzen von Objekten füllen?
Thema durchsuchen
Ansicht
Themen-Optionen

Array mit Instanzen von Objekten füllen?

Ein Thema von Nonsense · begonnen am 6. Mär 2004 · letzter Beitrag vom 6. Mär 2004
Antwort Antwort
Benutzerbild von Nonsense
Nonsense

Registriert seit: 23. Nov 2002
389 Beiträge
 
Delphi 5 Standard
 
#1

Re: Array mit Instanzen von Objekten füllen?

  Alt 6. Mär 2004, 18:02
Ja, hab' ich ja auch schon vor Ewigkeiten geändert. Bin halt ein kleines ungeduldiges Kind.

Das ganze sieht bei mir jetzt folgender Maßen aus:
Als erstes hätten wir da die Klassen (stark vereinfacht).
Delphi-Quellcode:
  TWorld = class
  private
    FWorldArray : array[0..31, 0..31] of TCreature;
    [...]
  public
    constructor Create( [...] );
  [...]
  end;

  // ------------------------------

  TFox = class(TAnimal)
  private
  public
    constructor Create;
  end;
Dann den constructor von TWorld:
Delphi-Quellcode:
constructor TWorld.Create( [...] );
var
  i: Integer;
  j: Integer;
begin
  [...]

  for i := 0 to 31 do
    for j := 0 to 31 do
    begin
      AddCreature(TFox, FWorldArray[i, j]);
    end;
end;
Sowie die Funktion zum "füllen" des Arrays:
Delphi-Quellcode:
procedure TWorld.AddCreature(InstanceClass: TClass; var Reference);
var
  Instance: TObject;
begin
  Instance := TObject(InstanceClass.NewInstance);
  TObject(Reference) := Instance;
  try
    Instance.Create;
  except
    TObject(Reference) := nil;
    raise;
  end;
end;
Mein Problem liegt jetzt darin, wie ich den Konstruktor von TWorld aufrufen muss, so dass das Array komplett mit Instanzen von TFox gefüllt wird.
Delphi-Quellcode:
procedure TFormMain.FormCreate(Sender: TObject);
var
  World: TWorld;
begin
  World := TWorld.Create(10, 10);
  World.Create(10, 10);
  [ ??? ]
end;
Hat jemand eine Idee?
  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 16:00 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