Einzelnen Beitrag anzeigen

dominikkv

Registriert seit: 30. Sep 2006
Ort: Gundelfingen
1.109 Beiträge
 
Delphi 2007 Professional
 
#1

Probleme beim Arraygröße ändern

  Alt 9. Jan 2007, 16:15
hi
ich will mir ne funktion zum teilen eines strings basteln.
ich übergebe ein array of string mittels Call-by-Reference in dem dann die teilstrings gespeichert werden.
nun sieht es aber so aus das ich die größe des arrays in der funktion nicht ändern kann...
hier mal die funktion:
Delphi-Quellcode:
function Teilen (s: String; var a: Array of String; const t: Char = ':'): boolean;
begin
result := true;
try
  setLength(a, 1); // Compiler meckert
  while Pos(t, s) > 0 do
    begin
      setlength(a, length(a)+1); // Compiler meckert
      a[high(a)] := copy(s, 1, Pos(t, s)-1);
      delete(s, 1, Pos(t, s));
    end;
  if s <> 'then
    begin
      setlength(a, length(a)+1 ); // Compiler meckert
      a[high(a)] := s;
    end;
except
  result := false;
end;
der compiler sagt immer
Zitat:
[Pascal Fehler] Unit2.pas(28): E2008 Inkompatible Typen
[Pascal Fehler] Unit2.pas(31): E2008 Inkompatible Typen
[Pascal Fehler] Unit2.pas(37): E2008 Inkompatible Typen
kann mir jemand sagen was ich falsch mach und wies richtig geht?
mfg.dominik
Dominik
  Mit Zitat antworten Zitat