Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 14-06-2004
JorgeBec JorgeBec is offline
Miembro
 
Registrado: jul 2003
Posts: 159
Poder: 21
JorgeBec Va por buen camino
Perdon, Nociones basicas...

Hola comunidad, parece chistoso, pero tengo un error de kinder...

estoy realizando unos programas de consola en Delphi 4, debido a un curso de PSP(Personal Software Process) e hice un procedimiento, que a grandes rasgos es el siguiente....
Código Delphi [-]
unit {nombre};

interface

uses   ;
 
Procedure LeeMatriz({declaraciones});

var

Implementation
{$APPTYPE CONSOLE}

begin

     {Declaraciones
     ....
     Mas declaraciones}


end.

Procedure LeeMatriz({declaraciones});
begin
      {declaraciones}
end;
y me manda un error "Unsatisfied forward or external declaration 'LeeMatriz' "
como quien dice al parecer no estoy declarando el cuerpo del programa pero como se puede observar si esta, ahora si paso el codigo adentro del end. Me dice que 'declaration expected but Procedure found', y la verdad no se que es, obviamente he hecho programas con procedimientos, pero siempre siendo parte de una clase Form, para este caso si tuviera un form el cuerpo del programa que daria asi.

Procedure TfrmMatriz.LeeMatriz(<declaraciones>);
begin
<declaraciones>
end;

Pero entonces para programas sin formas pues no se como, alguien podria ilustrarme...agradecere sus respuestas...

Última edición por marto fecha: 14-06-2004 a las 17:11:30.
Responder Con Cita
  #2  
Antiguo 14-06-2004
Avatar de marto
marto marto is offline
Miembro
 
Registrado: may 2003
Ubicación: Barcelona, Catalunya
Posts: 882
Poder: 21
marto Va por buen camino
Wop!

En primer lugar, pedirte que encierres tu código entre tags [delphi], ya que se sigue mucho mejor. Esta vez lo he hecho yo, pero espero que a partir de ahora lo hagas tu

Sobre tu problema, fijate que la implementación de la función está después del "end.". Para delphi, despues del end "con punto" no existe nada, así que es como si no pusieses la implementación. Si te fijas, el compilador te tienes que estar dando un warning al respecto
__________________
E pur si muove
Responder Con Cita
  #3  
Antiguo 14-06-2004
Avatar de __marcsc
__marcsc __marcsc is offline
Miembro
 
Registrado: may 2003
Ubicación: Girona
Posts: 577
Poder: 21
__marcsc Va por buen camino
Hola,

lo que debe estar pasando es que el end con el punto final denota el final de la unit, y tu declaras el procedimiento después de esto y no lo encuentra. Yo creo que esto debería funcionar:

Código Delphi [-]
unit {nombre};

interface

uses   ;
 
Procedure LeeMatriz({declaraciones});

var

Implementation
{$APPTYPE CONSOLE}

Procedure LeeMatriz({declaraciones});
begin
      {declaraciones}
end;

begin

     {Declaraciones
     ....
     Mas declaraciones}


end.

Saludos.
Responder Con Cita
  #4  
Antiguo 14-06-2004
JorgeBec JorgeBec is offline
Miembro
 
Registrado: jul 2003
Posts: 159
Poder: 21
JorgeBec Va por buen camino
Gracias a sus respuestas marcsc y marto, ha funcionado y he aprendido un poco mas , y a ti marto, procurare hacer lo de las etiquetas .
Responder Con Cita
  #5  
Antiguo 14-06-2004
__cadetill __cadetill is offline
Miembro
 
Registrado: may 2003
Posts: 3.387
Poder: 24
__cadetill Va por buen camino
cuando pones
Código Delphi [-]
interface
uses   ;
Procedure LeeMatriz({declaraciones});
Supongo que la declaración de este procedimiento está en la sección public, private, protected de la clase, no?

Si es así, en la implementation has de poner:
Código Delphi [-]
Procedure NombreClase.LeeMatriz({declaraciones});
begin
      {declaraciones}
end;
Espero que te sirva
Responder Con Cita
  #6  
Antiguo 14-06-2004
Avatar de marto
marto marto is offline
Miembro
 
Registrado: may 2003
Ubicación: Barcelona, Catalunya
Posts: 882
Poder: 21
marto Va por buen camino
Cita:
Empezado por cadetill
Supongo que la declaración de este procedimiento está en la sección public, private, protected de la clase, no?
Cadetill, me parece que la unit que nos manda es la del .dpr. Es una aplicación de consola a pelo, lo que pasa es que se ha olvidado de poner el "program"
__________________
E pur si muove
Responder Con Cita
  #7  
Antiguo 14-06-2004
Sirkius Sirkius is offline
Miembro
 
Registrado: jun 2004
Posts: 83
Poder: 20
Sirkius Va por buen camino
Yo mas bien creo que es una unit externa sin clase, solo procedimiento. Yo lo hago para procedimientos auxiliares que voy a usar en varios units
Responder Con Cita
  #8  
Antiguo 14-06-2004
Avatar de marto
marto marto is offline
Miembro
 
Registrado: may 2003
Ubicación: Barcelona, Catalunya
Posts: 882
Poder: 21
marto Va por buen camino
Cita:
Empezado por JorgeBec
estoy realizando unos programas de consola en Delphi 4
Cita:
Empezado por JorgeBec

Código Delphi [-]
Implementation
{$APPTYPE CONSOLE}
Dije que creía que era de consola por eso...
__________________
E pur si muove
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 15:00:55.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi