Einzelnen Beitrag anzeigen

R2009

Registriert seit: 9. Mär 2009
Ort: Heidelberg
440 Beiträge
 
Delphi 2007 Professional
 
#3

Re: Typdeklaration array und normaler Typ gleichzeitig

  Alt 11. Mär 2009, 09:32
Hi,

ich komm da nicht weiter. Vielleicht fehlt mir auch das nötige Wissen. Ich habe eine eigene Klasse Ttest mit einem default property erzeugt.
Hab das so behandelt wie ich Propertys immer behandle.

Delphi-Quellcode:
unit Unit1;

interface

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

type
  Ttest = class
  private
    { Private-Deklarationen }
    constructor create;
    function iget(Index: Integer): integer;
    procedure iput(Index: Integer; Item: integer);
    //ig:array of integer;
  public
    { Public-Deklarationen }
    property I[Index: Integer]: integer read iGet write iPut; default;
  end;

  TForm1 = class(TForm)
    Button1: TButton;
    Label1: TLabel;
    procedure FormCreate(Sender: TObject);
    procedure Button1Click(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;
  s:Ttest;

implementation

{$R *.dfm}
constructor Ttest.create;
begin
  //setlength(I,10);
end;

function Ttest.iget(Index: Integer): integer;
begin
  result:=I[Index];
end;

procedure Ttest.iput(Index: Integer; Item: integer);
begin
  I[Index]:=Item;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  label1.caption:=inttostr(s[10]);
end;

procedure TForm1.FormCreate(Sender: TObject);
var f:double;tl:tlist;
begin
  s:=TTtest.Create;
  s[1]:=0;
end;

end.
Irgendwo muss ich dem Teil doch mitteilen wie gross das Array sein soll. Sobald ich in create setlength einfüge verlangt er nach dem I ein "[".

Kann mir jemand helfen?

Danke im Vorraus!
Rainer Unger
Mein Profil:
Studium Allgemeine Elektrotechnik TH Darmstadt
Entwicklung von Tools für die Rundsteuer und Zählertechnik.
uP's Atmel Prozessoren (ATmega16,32,88...) in C und Assembler.
  Mit Zitat antworten Zitat