AGB  ·  Datenschutz  ·  Impressum  







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

TObject als Übergabeparameter

Ein Thema von hanselmansel · begonnen am 27. Nov 2005 · letzter Beitrag vom 27. Nov 2005
 
Benutzerbild von hanselmansel
hanselmansel

Registriert seit: 23. Feb 2005
Ort: Kaiserslautern
279 Beiträge
 
Delphi 2009 Enterprise
 
#1

TObject als Übergabeparameter

  Alt 27. Nov 2005, 18:54
HiHo,

im Info GK 12 wird uns gerade der Gebrauch von Pointern in Verbindung mit grundlegenden Datentypen beigebracht, aber ich fürchte, ich habe irgendwas vermurkst. Ich habe eine Klasse erstellt, die beliebige Objekte nach dem First in, First out-Prinzip verwalten soll.
Delphi-Quellcode:
  TManagedSnake = class(TObject)
  private
    fAnfang, fLaeufer, fEnde :PListenElement;
  public
    Constructor Create;
    Destructor Destroy; override;

    Function PointerAtEnd :Boolean;
    Function EmptyList :Boolean;

    Procedure newElement(Quelle :TObject);
    Function GetActiveElement :TObject;
    Procedure movePointer(Distance :Integer = 1);
    Function GetAndFreeElement :TObject;

    Procedure EraseAll;
  end;
Ein neues Element in der Liste soll per newElement(Quelle :TObject) erstellt werden. Doch irgendwie kracht es hier bei mir. Aufgerufen wird die Prozedur in folgendem Code-Abschnitt:
Delphi-Quellcode:
Type
  TString = class(TObject)
  public
    Content :String;
  end;

Var
  Test :TManagedSnake;

procedure TForm1.bt_neuClick(Sender: TObject);
var
  anObject :TString;
begin //<--Breakpoint
anObject := TString.Create;
anObject.Content := e_eingabe.Text;
Test.newElement(anObject as TObject);
anObject.Free;
Wenn ich in die aufrufende Prozedur nun einen Breakpoint setze, wird das Objekt "Test" korrekt erstellt; und ich sehe auch, dass es mit Daten gefüllt wird. Sobald der "blaue Balken" allerdings in die Prozedur newElement springt, zeigt mir Delphi nur noch Quelle = () an, wenn ich mit der Maus über der variablen verharre.
Ich fürchte, dass ich irgendwie nur eine Referenz o.ä. übergeben habe, aber ich weiß nun einfach nicht mehr weiter.

Es wäre super, wenn einer von euch die Zeit finden würde, einmal drüber zu gucken.
Danke wie immer schon im Voraus allein für's Lesen der Frage,

MfG,

hanselmansel
Es gibt nur sehr wenige Probleme auf dieser Welt, die sich nicht mit einigen hundert Gramm Sprengstoff lösen ließen.
  Mit Zitat antworten Zitat
 


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 02:26 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 by Thomas Breitkreuz