Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Komische [für mich nicht navollziehbare] Inhalte in Array (https://www.delphipraxis.net/149206-komische-%5Bfuer-mich-nicht-navollziehbare%5D-inhalte-array.html)

Ducksoul 16. Mär 2010 17:31


Komische [für mich nicht navollziehbare] Inhalte in Array
 
Hallo,

ich benutze folgende Funktion um einen Slopeindex zu berechnen und danach in einem Array zu speichern.

Delphi-Quellcode:
function Talg_form.CalcPriority_Sokolizin : Boolean;
var
  i, x, si: integer;
begin
    // Startparameter festlegen
  result := False;

  for i := 0 to jobCount - 1 do
  begin
    si := 0;
    for x := 0 to wcCount - 1 do
    begin
      if x = 0 then
        si := si + (jobarray[i].j_proc[x] * -1)
      else if x = wcCount - 1 then
        si := si + jobarray[i].j_proc[x];
    end;
    jobArray[i].j_prio := si;
  end;
end;
Nachdem mir gestern meine IDE abgestürzt ist bekomme ich immer eine Exception beim Ausführen des Programms (EAccess Violation) und beim Debuggen bin ich auf folgenden Inhalt in meinem Array gestoßen, den ich nicht nachvollziehen kann (bei j_prio: -3 das in geschweiften Klammern):

http://img532.imageshack.us/img532/4725/muell.jpg

Kann es sein, dass da irgendwas nich mehr ganz koscher ist? In einem Array of Integer, bzw Integer Feld kann ich mir sowas irgendwie nich vorstellen.


Gruß
Franz

Ducksoul 16. Mär 2010 17:46

Re: Komische [für mich nicht navollziehbare] Inhalte in Arra
 
Ok, das is anscheinend das - Zeichen bei negativen Werten. :-/

shmia 16. Mär 2010 17:52

Re: Komische [für mich nicht navollziehbare] Inhalte in Arra
 
Ich habe den Code mal vereinfacht.
Die innere Schleife ist unnötig - es sei denn, du hast uns etwas Code vorenthalten.
Delphi-Quellcode:
for i := 0 to jobCount - 1 do
begin
  si := jobarray[i].j_proc[wcCount - 1] - jobarray[i].j_proc[0];
  jobArray[i].j_prio := si;
end;
Aber dein Grundproblem scheint mir zu sein, dass du nicht mit Klassen und Objekten arbeitest,
sondern mit (zu) einfachen Datenstrukturen wie Array und Record.
Die Folge ist, das der Code an der falschen Stelle (dem Formular) sich anhäuft.

Ducksoul 16. Mär 2010 18:59

Re: Komische [für mich nicht navollziehbare] Inhalte in Arra
 
Hm, ich arbeite im Code auch ein wenig mit Objekten und Klassen :angel:

Das Ding ist, dass für das Grundproblem ist, dass ein Array am Anfang vollkommen ausgereicht hat und der Prof immer neue Ansprüche gestellt hat. Irgendwann wurde das Array dann mehrdimensional, es kam ein Record hinzu und zum Schluss Objectlist und Klasse.

Jetzt bin ich eigentlich fertig und solange alles funktioniert will ich mich nich beschweren. Dass das alles nich so performant ist wie es sein könnte, ist mir bewusst.

Leider funktioniert noch nich alles.... ^^ Die Exception entstand aus meiner Permutationsfunktion.


Gruß


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:28 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