Einzelnen Beitrag anzeigen

EWeiss
(Gast)

n/a Beiträge
 
#47

AW: die aufzurufende funktion wurde vom linker entfernt

  Alt 2. Mai 2017, 02:46
Eine ganz einfache Anwendung.
Delphi-Quellcode:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, uSprite;

type
  TForm1 = class(TForm)
    MemoN: TMemo;
    btnAnalyze: TButton;
    btnValid: TButton;
    MemoValid: TMemo;
    procedure FormCreate(Sender: TObject);
    procedure btnAnalyzeClick(Sender: TObject);
    procedure btnValidClick(Sender: TObject);
  private
    gS: TNegativeArray;
    MaxCount: Integer;
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.btnAnalyzeClick(Sender: TObject);
var
  Count: Integer;
  rnd: Integer;
begin
  Count := 0;
  rnd := Random(100);

  repeat
    inc(Count);
    gS.SetLen(Count);

    gS[Count].x := Count;
    MemoN.Lines.Add(IntToStr(gS[Count].x));
  until Count = rnd;
end;

procedure TForm1.btnValidClick(Sender: TObject);
var
  i: Integer;
begin
  MemoValid.Clear;

  for i := 0 to MemoN.Lines.Count do
  if Assigned(gS[i]) then
    MemoValid.Lines.Add('True ' + IntToStr(gS[i].x));

end;

procedure TForm1.FormCreate(Sender: TObject);
var
  i: Integer;
begin

  gS := TNegativeArray.Create(6);
  for i := -5 to 0 do
  begin
    gS[i] := TSprite.Create;
    gS[i].x := i;
    MemoN.Lines.Add(IntToStr(gS[i].x) + ' Count ' + IntToStr(MemoN.Lines.Count));
    MaxCount := i;
  end;

end;

end.
Ich muss jetzt mindestens 100 bzw. Random(100) Einträge addieren können ohne das die negativen Arrays zerstört werden.
Aber!
Beim zweiten Positiven Eintrag kracht es schon.
wie gehabt setData und getData werden vom Linker entfernt.
Sorry ich bekomme das mit dieser Classe nicht geregelt. (Vielleicht hat ja noch irgend jemand eine Idee.)

Wie man am Bild schon erkennen kann sind die ersten 4 Arrays Assigned aber alle Values von X falsch.
Und ich habe noch keine Positive Arrays addiert.

gruss

Geändert von EWeiss (11. Jul 2019 um 17:02 Uhr)
  Mit Zitat antworten Zitat