Einzelnen Beitrag anzeigen

Benutzerbild von malo
malo

Registriert seit: 19. Sep 2004
2.115 Beiträge
 
#1

Problem mit Setmethode einer Property

  Alt 12. Jun 2005, 16:12
Anschließend an das gestrige Problem, kommt nun wieder eines mit der Property.

Ich habe eine Property, die so aussieht:

property OperatorChars: TCharArray read fOperatorChars write SetOperatorChars; fOperators ist vom Typ TCharArray, was ein array of char ist.

Die Prozedur SetOperatorChars sieht folgendermaßen aus:

Delphi-Quellcode:
procedure TTokens.SetOperatorChars(Index: integer; Value: char);
begin
  if (Index > -1) and (Index <= high(fOperatorChars)) then
    fOperatorChars[Index] := Value
  else if Index = high(fOperatorChars) + 1 then
    AddOperatorChar(value);
end;
AddOperatorChar macht übrigens nichts anderes, als Speicher für das Array zu reservieren und dann einen neuen Array-Index zu beschreiben.

Ich bekomme jetzt bei der Property den Fehler "Inkompatible Typen". Wenn ich die SetOperatorChars-Methode durch die Feldvariable fOperatorChars ersetze, funktioniert es. Allerdings möchte ich das in einer Methode haben, damit ich den Speicher vernünftig reservieren kann, ohne jedes mal erneut SetLength aufzurufen
  Mit Zitat antworten Zitat