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