AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Dynamische Arrays in normale Arrays umwandeln
Thema durchsuchen
Ansicht
Themen-Optionen

Dynamische Arrays in normale Arrays umwandeln

Ein Thema von sinblur · begonnen am 7. Apr 2005 · letzter Beitrag vom 7. Apr 2005
Antwort Antwort
sinblur

Registriert seit: 5. Apr 2005
3 Beiträge
 
#1

Dynamische Arrays in normale Arrays umwandeln

  Alt 7. Apr 2005, 13:28
Hi,

sitze hier vor einem Problem.
Hab hier ne VCL(Delphi 4) die ich gerne Delphi3-konform umschreiben moechte.

Mein Problem besteht darin, dass ich nicht weiss wie ich die Arrays umschreiben muss.


var FByteArray : array of Byte; Da dies in Delphi3 nich funktioniert hab ichs mal so probiert:

FByteArray : array[1..100] of Byte; daraufhin kommen dann solche Fehler wie: Inkompatible Typen: 'Array' und 'Cardinal'
oder Inkompatible Typen: 'Array' und 'Word'
SetLength(FByteArray,FPacket^.ResponseCounter); //Kann ja nich gehen, da das Array nicht dynamisch erzeugt wurde. Wie koennte es funktionieren?

Wie koennte ich denn LINK fuer mein Problem einsetzen?

Danke schonmal

Gruss Sinblur
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#2

Re: Dynamische Arrays in normale Arrays umwandeln

  Alt 7. Apr 2005, 13:30
Gibt es unter D3 schon die Klasse TList? Dann nimm doch die.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
sinblur

Registriert seit: 5. Apr 2005
3 Beiträge
 
#3

Re: Dynamische Arrays in normale Arrays umwandeln

  Alt 7. Apr 2005, 13:33
Ja, TList gibt es.

Aber wie hilft mir das bei meinem Problem?
Bin noch ein kleiner Delphi-DAU!

//edit wenn ich dies einsetze:
var FByteArray : TList; sagt es immernoch: Inkompatible Typen: 'Array' und 'Cardinal'
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#4

Re: Dynamische Arrays in normale Arrays umwandeln

  Alt 7. Apr 2005, 13:49
Delphi-Quellcode:
type
  TForm1 = class(TForm)
    Button1: TButton;
    ListBox1: TListBox;
    procedure Button1Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

type
  TMyRec = record
    Zahl: Integer;
  end;
  PMyRec = ^TMyRec;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
  MyDynArray: TList;
  MyRec: PMyRec;
  i: Integer;
begin
  MyDynArray := TList.Create;
  try
    // füllen
    for i := 0 to 99 do
    begin
      // Speicher anfordern
      New(MyRec);
      // Irgendwas zuweisen
      MyRec.Zahl := Random(50);
      // in Liste aufnehmen
      MyDynArray.Add(MyRec);
    end;
    // anzeigen
    for i := 0 to MyDynArray.Count - 1 do
    begin
      // aus Liste "rausholen"
      MyRec := MyDynArray.Items[i];
      // in Listbox ausgeben
      Listbox1.Items.Add(IntToStr(MyRec.Zahl));
    end;
  finally
    // Speicher wieder freigben
    for i := 0 to MyDynArray.Count - 1 do
    begin
      // Listeneinträge freigben
      MyRec := MyDynArray.Items[i];
      Dispose(Myrec);
    end;
    // Liste selber wieder freigeben
    MyDynArray.Free
  end;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  Randomize;
end;
Ein Blick in die Hilfe hätte es auch getan.
Michael
Ein Teil meines Codes würde euch verunsichern.
  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 11:30 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz