Programación General > C/C++
[Solucionado] Globales en C++
Eternal Idol:
El error ahora no es el mismo:
/ccoDdaaa.o(.text+0x4):main.cpp: undefined reference to `contador'
/ccoDdaaa.o(.text+0xa):main.cpp: undefined reference to `contador'
collect2: ld returned 1 exit status
main.obj : error LNK2019: unresolved external symbol "int volatile contador" (?contador@@3HC) referenced in function "void __cdecl interrupcion_reloj(void)" (?interrupcion_reloj@@YAXXZ)
main.exe : fatal error LNK1120: 1 unresolved externals
Como te decia tenes que definirlo en algun modulo, en este caso en el main:
--- Código: Text ---#include "clases.h" volatile int contador = 0;...
fachamix:
no moskito, el extern tienes que usarlo en el ,cpp no en el .h donde esta la declaracion original.
EI: juntando mensajes.
//main.cpp
//Rutina de interrupción del temporizador
void interrupcion_tick()
{
contador_ticks++;
}
END_OF_FUNCTION(interrupcion_tick); //NUNCA E VISTO ESTO CHE, PORQUE SE LA USA???
Eternal Idol:
--- Cita de: "fachamix" ---no moskito, el extern tienes que usarlo en el ,cpp no en el .h donde esta la declaracion original.
--- Fin de la cita ---
Tal y como lo explique funcione perfectamente, comprobalo.
--- Cita de: "fachamix" ---NUNCA E VISTO ESTO CHE, PORQUE SE LA USA???
--- Fin de la cita ---
Es algo de Allegro ...
m0skit0:
--- Cita de: "Eternal Idol" ---Tal y como lo explique funcione perfectamente, comprobalo.
--- Fin de la cita ---
Sí, pero da error en cgeneral.cpp: "variable contador undeclared". Así que lo puse en cgeneral.cpp y tira :P Ahí se queda.
--- Cita de: "fachamix" ---END_OF_FUNCTION(interrupcion_tick); //NUNCA E VISTO ESTO CHE, PORQUE SE LA USA???
--- Fin de la cita ---
Como ha dicho Eternal Idol.
:hola:
Eternal Idol:
--- Cita de: "m0skit0" ---Sí, pero da error en cgeneral.cpp: "variable contador undeclared". Así que lo puse en cgeneral.cpp y tira :P Ahí se queda.
--- Fin de la cita ---
Dara error en un modulo por no incluir la cabecera donde esta declarado ...
Navegación
[*] Página Anterior
Ir a la versión completa