Club Builder - Foros de discusión Club Builder
Foro de C++Builder en español
 
 FAQFAQ   BuscarBuscar   MiembrosMiembros   Grupos de UsuariosGrupos de Usuarios   RegistrarseRegistrarse 
 PerfilPerfil   Entra para ver tus mensajes privadosEntra para ver tus mensajes privados   EntrarEntrar 

Unresolved external

 
Publicar nuevo tema   Responder al tema    Foros de discusión -> Consultas
Ver tema anterior :: Ver tema siguiente  
Autor Mensaje
Mensaje    Asunto: Unresolved external Responder citando

Buenas, estoy haciendo un programa y cada clase la tengo en una Unit distinta. Al terminar de declarar la clase, declaro una instancia de la misma pero "extern" para decir que va a ser usada desde otras units.
Mi problema es que en un programa que ya termine use esta modalidad y no tuve ningun problema, pero ahora me sale este error:

Unresolved external (nombre de la instancia) referenced from (nombre de la ruta del archivo)

Como puedo solucionarlo, o de que otra forma puedo hacerlo?

Muchas gracias de antemano.
Volver arriba
Ver perfil de usuario Enviar mensaje privado
Mensaje    Asunto: Responder citando

Debes incluir las fuentes de esas units en tu nuevo proyecto para que las linke.

Saludos.
Volver arriba
Ver perfil de usuario Enviar mensaje privado
Mensaje    Asunto: SOLUCION! Responder citando

Probe con la solucion de escafandra, pero no sirvio pues ya lo habia hecho y sin embargo seguia sin poder compilar.

La solucion es declarar una instancia (sin extern) en el .cpp
por ejemplo:
Clase1 uno;

Espero que le sirva a alguien.
Volver arriba
Ver perfil de usuario Enviar mensaje privado
Mensaje    Asunto: Responder citando

Pues realmente no tienes que declarar ninguna instancia detras de la declaración ni en ninguna unit cpp hasta que te haga falta.

extern sólo dice al compilador que lo que declaras no está en este módulo pero que no se preocupe pues en el proceso del link lo encontrará en otro sitio. De esta forma, debes incluir el código declarado exter en el proyecto bien en un .cpp o en una librería, de lo contrario tendrás un error de Unresolved external.

Saludos.
Volver arriba
Ver perfil de usuario Enviar mensaje privado
Mensaje    Asunto: Responder citando

Escafandra, SI hay que declarar la instancia de la clase en el cpp.

Repito por si a alguien le sirve esto en un futuro:

La solucion es declarar una instancia (sin extern) en el .cpp

Cierren las respuestas
Volver arriba
Ver perfil de usuario Enviar mensaje privado
Mensaje    Asunto: Responder citando

Pues parece que este tema te pone algo nervioso, no tienes porqué "gritar":
migue_1988 escribió:
Escafandra, SI hay que declarar la instancia de la clase en el cpp.

Repito por si a alguien le sirve esto en un futuro:

La solucion es declarar una instancia (sin extern) en el .cpp

Cierren las respuestas


No se si leíste bien, nunca dije que no declararas tu instancia:
escafandra escribió:
Pues realmente no tienes que declarar ninguna instancia detrás de la declaración ni en ninguna unit cpp hasta que te haga falta.


En cualquier caso no estamos para discutir, al menos yo, ni para ver quién tiene más razón. Mi objetivo al responder es simplemente ayudar.

Saludos.
Volver arriba
Ver perfil de usuario Enviar mensaje privado
Mensaje    Asunto: Responder citando

declaras que existe la clase que vas a usar mas bien ¿no? en realidad no es una instancia.

class nombreclase;
Volver arriba
Ver perfil de usuario Enviar mensaje privado
Mensaje    Asunto: Responder citando

La idea era que si alguien tiene el mismo problema, y pone ese error en el buscador encuentre la posta aca.

Para mi sigue siendo una instancia, por ejemplo en Form1 dice algo asi como :
TForm *Form1;

Cierren las respuestas, no vale la pena pelear, hagamos algo mas productivo
Volver arriba
Ver perfil de usuario Enviar mensaje privado
Mensaje    Asunto: Responder citando

offtopic :
Sigo pensando que te pones algo nervioso....
De tus 18 post hasta este momento has utilizado demasiadas veces referencias a enojos y peleas. Nadie en este foro ha intentado pelear ni enfadarse contigo. Las aportaciones son libres y de buena fe, así lo debes entender.Wink

Te aconsejo que leas 1, 2 y 3.

Estoy de acuerdo contigo en una cosa:
migue_1988 escribió:
no vale la pena pelear


Saludos.
Volver arriba
Ver perfil de usuario Enviar mensaje privado
Mostrar mensajes de anteriores:   
Cambiar a:  
No puedes publicar temas nuevos en este foro
No puedes responder a temas en este foro
No puedes editar tus mensajes en este foro
No puedes borrar tus mensajes en este foro
No puedes votar en las encuestas de este foro


Hosting WordPress Indedmedia desde 3,99 €
© 2002–2026 Club Builder · Funciona con phpBB.