Ver Mensaje Individual
  #10  
Antiguo 18-11-2016
Avatar de AgustinOrtu
[AgustinOrtu] AgustinOrtu is offline
Miembro Premium
NULL
 
Registrado: ago 2013
Ubicación: Argentina
Posts: 1.858
Reputación: 17
AgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en bruto
Estas cosas se solucionan en un periquete si publican todo el codigo fuente relevante, con el mensaje de error del compilador y en que linea. Si no hay que ir adivinando como lo esta haciendo (y encima acertando) roman

Lo que esta en la seccion de implementation es privado a la unidad en cuestion; la unica que puede acceder a dicha funcion es la propia unidad. De hecho, dependiendo de como la tengas declarada puede tener distintos alcances

Código Delphi [-]
unit Unit1;

interface

implementation

function Zod: string; // declaracion de la cabecera, sin implementar: de esta manera es visible en toda la unit

function Foo: string;
begin
  Result := 'Foo';
end;

procedure Algo;
var
  s: string;
begin
  s := Foo; // funciona, porque foo esta implementada mas arriba que este procedimiento
  s := Bar; // no funciona!, porque esta declarada debajo; este procedimiento "no ve" la funcion Bar
  s := Zod; // este caso si funciona porque la cabecera esta declarada
end;

function Bar: string;
begin
  Result := 'Bar';
end;

function Zod: string;
begin
  Result := 'Zod';
end;
Responder Con Cita