Thema: Delphi Hilfe bei Unit

Einzelnen Beitrag anzeigen

Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#1

Hilfe bei Unit

  Alt 13. Sep 2004, 14:03
Hoi,

ich habe 2 funktionen gemacht (die auch funktionieren) wenn ich sie in eine unit packe und die unit dann ich mein prog einbinde kann ich sie nicht kompilieren.

Die Unit sieht so aus:

Delphi-Quellcode:
unit StrFuncs;

interface

uses
  SysUtils;

function GetTok(str: string; Tok: string; sep: char): string;
function NumTok(str: string; sep: char): integer;

implementation

function GetTok(str: string; Tok: integer; sep: char): string;
var
  index: integer;
begin
  result := '';
  if (str = '') or (str = sep) or (Tok = 0) or (sep = '') then
    exit;
  if (pos(sep, str) = 0) and (Tok = 1) then
  begin
    result := str;
    exit;
  end;
  str := str + sep;
  while pos(sep+sep, str) > 0 do
    delete(str, pos(sep+sep, str), 1);
  if pos(sep, str) = 1 then
    delete(str, 1, 1);
  index := 1;
  while pos(sep, str) > 0 do
  begin
    if Tok = index then
    begin
      result := copy(str, 1, pos(sep, str)-1);
      exit;
    end
    else
    begin
      delete(str, 1, pos(sep, str));
      inc(index);
    end;
  end;
end;

function NumTok(str: string; sep: char): integer;
begin
  result := 0;
  if (str = '') or (str = sep) or (sep = '') then
    exit;
  if pos(sep, str) = 0 then
  begin
    result := 1;
    exit;
  end;
  str := str + sep;
  while pos(sep+sep, str) > 0 do
    delete(str, pos(sep+sep, str), 1);
  if pos(sep, str) = 1 then
    delete(str, 1, 1);
  while pos(sep, str) > 0 do
  begin
    Delete(str, 1, pos(sep, str));
    inc(result);
  end;
end;

end.


fehler ist/sind:

Zitat:
Erzeugen
[Fehler] StrFuncs.pas(13): Bei der vorherigen Deklaration von GetTok wurde die Direktive 'overload' nicht angegeben
[Fehler] StrFuncs.pas(8): Ungenügende Forward- oder External-Deklaration: 'GetTok'
[Fataler Fehler] Unit1.pas(7): Verwendete Unit 'StrFuncs.pas' kann nicht compiliert werden
wa sist denn falsch?
Mario
MSN: cyanide@ccode.de
  Mit Zitat antworten Zitat