неудовлетворенная прямая или внешняя декларация - PullRequest
8 голосов
/ 19 августа 2009

Я получаю сообщение об ошибке при компиляции .pas файла.

"неудовлетворенное прямое или внешнее объявление: TxxxException.CheckSchemeFinMethodDAException."

Кто-нибудь знает, что означает эта ошибка?

Означает ли это, что CheckSchemeFinMethodDAException не был вызван во всех соответствующих файлах?

Ответы [ 3 ]

22 голосов
/ 19 августа 2009

Вы объявили этот метод, но не реализовали его.

3 голосов
/ 19 августа 2009
unit Unit1;

interface

type
  TMyClass = class
    procedure DeclaredProcedure;
  end;

implementation

end.

Это приводит к ошибке, которую вы описываете. Процедура DeclaredProcedure является объявленной (подпись), но не определенной (часть реализации пуста).

Вы должны предоставить реализацию для процедуры.

2 голосов
/ 23 мая 2013

вы, возможно, забыли поставить имя класса перед именем функции в разделе реализации. например, следующий код выдаст вашу ошибку:

unit Unit1;

interface

type
  TMyClass = class
    function my_func(const text: string): string;
  end;

implementation

function my_func(const text: string): string;
begin
  result := text;
end;

end.

чтобы исправить, просто измените реализацию функции на TMyClass.my_func(const text: string): string;.

...