Ver Mensaje Individual
  #1 (permalink)  
Antiguo 12/05/2011, 05:47
carnotinlondon
 
Fecha de Ingreso: mayo-2011
Mensajes: 2
Antigüedad: 13 años, 6 meses
Puntos: 0
¿Se pueden definir estructuras extern?

Hola:

Soy nuevo en el foro y quería saludar a los foreros.
Llevo ya algo de tiempo programando, pero ahora me ha surgido una duda que quizá sea muy básica.
Quiero hacer un programa que, para hacer un cálculo, tome los datos que necesite de un archivo de cabecera. Al principio cree una variable struct en una cabecera y también definí algunas variables de esa estructura y les di valor a los datos. De hecho, definí las variables nuevas de esa estructura como extern, y en un .cpp aparte le di valores a aquellas variables.

Al final de todo, en el archivo Main, pasan dos cosas:
cuando quiero llamar a una de esas variables, (no las he vuelto a dar un valor ni definir de nuevo) me da un error de compilación:


Undefined symbols:
"_hydrogen", referenced from:
_hydrogen$non_lazy_ptr in ccaAP39L.o
ld: symbol(s) not found
collect2: ld returned 1 exit status




El problema es que no sé si se pueden definir variables e inicializarlas a un valor en los archivos de cabecera. Tampoco sé si se pueden crear objetos de una clase determinada en un archivo de cabecera, o los objetos tienen que ser creados dentro de la función main.
Mi interés es que todos esos datos ya están cargados con valores en alguna parte, por que son siempre los mismos, sin tener que cargarlos en la función main.

un saludo grande y, si has llegado hasta este linea, muchas gracias por la atención!!


Carnotinlondon