Announcement

Collapse
No announcement yet.

Quelltext-Umwandlung von Java zu Delphi / Vectoren

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Quelltext-Umwandlung von Java zu Delphi / Vectoren

    Hallo,

    gibt es eine Möglichkeit, einen Java-Quelltext automatisch in Delphi umwandeln zu lassen (verwende Borland Delphi 7 und Borland JBuilder 6)?

    Dann hab ich noch ne Frage: Gibt es in Delphi eine Art Vector wie in Java, d.h. ein dynamisches Array mit Objekt-Typen?

    Danke!
    Manu

  • #2
    Hi Manu,<br>
    betreffs der Umwandlung: Ich weiß es nicht genau, aber ich bezweifle es stark. Und wenn es doch was gibt, ist der konvertierte Quellcode wahrscheinlich unter aller Sau. :-)
    <p>Zu #2: Probier mal TList. Ist trotz des Namens ein Array, keine verkettete Liste.
    <p>Ciao, Uli

    Comment


    • #3
      Hi Uli,

      danke für Deine schnelle Antwort. Hab das ganze jetzt doch von Hand in Delphi umgeschrieben, hab aber immer noch Probleme mit den Vectoren: Ich verzweifle gerade an den TLists.

      Ich habe eine eigene Klasse geschrieben und möchte einige Instanzen davon in einer Liste abspeichern. Die Klasse enthält nur ein paar Attribute. Die Daten dazu hole ich aus einer Textfile, erstelle eine neue Instanz mit create und füge sie mit add der Liste hinzu. Diese Liste brauche ich in einer anderen Methode, also übergebe ich sie als Parameter. Doch wenn ich auf ein Element der Liste zugreifen will mit liste.Items[index] sind die Attribute aller Instanzen in der Liste gleich, obwohl ich zuvor unterschiedliche Instanzen gespeichert habe. Wie kann das sein?

      Dann hab ich es noch mit TObjectList versucht, aber da kann ich nicht mal mehr eine neue Instanz meiner Klasse erzeugen.

      Kannst Du mir (oder jemand anders) vielleicht weiterhelfen?

      Danke +schöne Grüße,
      Man

      Comment


      • #4
        <i>Doch wenn ich auf ein Element der Liste zugreifen will mit liste.Items[index] sind die Attribute aller Instanzen in der Liste gleich, obwohl ich zuvor unterschiedliche Instanzen gespeichert habe. Wie kann das sein?
        </i><br>
        Klingt so, als würdest du einfach einen falschen Index verwenden. Wenn's das nicht ist, poste doch mal den relevanten Code (Erstellung/Verwendung der Objekte).
        <p>Ciao, Uli

        Comment


        • #5
          Der Zugriff mit <I>liste.Items[index]</I> liefert nur einen allgemeinen Zeiger vom Typ <I>Pointer</I>, der nichts davon weiß, daß Du eigentlich auf eine Instanz deiner Klasse zugreifen willst. Du mußt sogenanntes <I>type casting</I> betreiben: Umwandlung des Zeigers in eine Instanz Deiner Klasse. Dann funktioniert's auch.

          Beispiel:

          <PRE>
          TMeineKlasse = class
          public
          X, Y: Integer;
          end;
          </PRE>

          Der Zugriff auf die beiden Variablen X und Y erfolgt durch:

          <PRE>
          TMeineKlasse(liste.Items[index]).X
          </PRE>
          und
          <PRE>
          TMeineKlasse(liste.Items[index]).Y
          </PRE>

          Mfg,

          Geor

          Comment

          Working...
          X