Einzelnen Beitrag anzeigen

Teekeks

Registriert seit: 19. Okt 2008
Ort: Dresden
765 Beiträge
 
FreePascal / Lazarus
 
#1

Class -->Error

  Alt 9. Jan 2009, 16:03
Hallo!
Ich probiere mich gerade an Klassen aus und bin auf ein von mir unlößbares Problem gestoßen.
Hier erstmal mein bisheriger Code:
Delphi-Quellcode:
unit Unit1;

{$mode objfpc}{$H+}

interface

uses
  Classes, SysUtils, LResources, Forms, Controls, Graphics, Dialogs, StdCtrls;

type

  { TForm1 }

  TForm1 =class;

  TTier = class
  private
    pArt:string;
    pAlter:integer;
    pGeschlecht:string;
    pKrankheit:string;
  public
    constructor Create(Krankheit:string; Geschlecht:string; Art:string);
  published
    property getTierart:string read pArt;
    property getAlter:integer read pAlter;
    property getGechlecht: string read pGeschlecht;
    property getKrankheit:string read pKrankheit;
  end;

  TForm1 = class(TForm)
    Button1: TButton;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    procedure Button1Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
  private
    { private declarations }
  public
    { public declarations }
    Tier:TTier;
  end;


var
  Form1: TForm1;

implementation

{ TForm1 }
constructor TTier.Create(Krankheit:string; Geschlecht:string; Art:string);
begin
  pAlter:=0;
  pGeschlecht:=Geschlecht;
  pArt:=Art;
  pKrankheit:=Krankheit;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  Tier.Create('Gesund','Weiblich','Katze');
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  Label1.Caption:=Tier.pKrankheit;
  Label2.Caption:=Tier.pArt;
  Label3.Caption:=Tier.pGeschlecht;
  Label4.Caption:=inttostr(Tier.pAlter);
end;

initialization
  {$I unit1.lrs}

end.
jestz bekomme ich wenn ich auf Button1 Klicke eine meldung:
Zitat von Lazarus:
Project project1 raised exception class 'External: SIGSEGV'
Was mache ich falsch? weil eigentlich (wenn ich die Fehlermeldung richtig Deute) will der mich ja darauf hinweisen das ich die Klasse nicht "created" habe,oder?

gruß Teekeks
Peter
"Div by zero Error" oder auch: "Es geht auch ohne Signatur!".
  Mit Zitat antworten Zitat