Título: Classes em Ficheiros Publicado por: ber0x88 en 16 Abril 2016, 19:31 pm Boa tarde,
Peço desculpa falar em português mas espero que percebam. :-X Segue o seguinte código: test.cpp Código
Cria o objecto "a" referente há classe MyClass. Output: Constr Dest MyClass.h onde está declarado a função do construtor e destrutor Código
MyClass.cpp função do construtor e destrutor Código
Tenho declarado MyClass.cpp em test.cpp e só assim é que funciona. Caso comente a linha que faz " #include "MyClass.cpp" " e fique apenas incluído o MyClass.h ocorre o seguinte erro: /home/user/Documents/workspace/test.o||In function `main':| test.cpp|| undefined reference to `MyClass::MyClass()'| test.cpp|| undefined reference to `MyClass::~MyClass()'| ||=== Build failed: 2 error(s), 0 warning(s) (0 minute(s), 0 second(s)) ===| Caso inclua só o MyClass.cpp o programa também executa sem erros. Não deberia executar normalmente só incluindo o Header? Desde já obrigado :P Título: Re: Classes em Ficheiros Publicado por: ivancea96 en 16 Abril 2016, 20:21 pm Código
Solo haz include del .h. Los .cpp se compilan a parte. ¿Tienes un proyecto o compilas cada archivo por separado? La compilación en este caso, va así: Código: test.cpp -> test.o "Undefined reference" significa que no encuentra la clase en los ".o". Lo más probable es que estés haciendo: Código: test.o -> test.exe :: Error: falta MyClass No sé como compilas, ni que IDE o editor usas, así que no puedo decir más. Título: Re: Classes em Ficheiros Publicado por: ber0x88 en 17 Abril 2016, 00:37 am Uso Codeblocks em linux com g++ 4.8.4.
Tentei novamente com novo projeto e continua o mesmo erro. :-\ Título: Re: Classes em Ficheiros Publicado por: ivancea96 en 17 Abril 2016, 01:01 am Están los 3 archivos metidos en el proyecto? Debería compilar bien
Título: Re: Classes em Ficheiros Publicado por: ber0x88 en 17 Abril 2016, 01:08 am Já está a funcionar. :P Apenas fechei o IDE e o projeto, voltei a abrir projeto recente e funcionou :xD
Título: Re: Classes em Ficheiros Publicado por: ivancea96 en 17 Abril 2016, 01:12 am Puedes darle a compilar, y mostrar lo que salga en la pestaña "Build log"?
Título: Re: Classes em Ficheiros Publicado por: ber0x88 en 17 Abril 2016, 01:31 am Fiz: File > new project > console application.
Depois já com o projeto aberto: File > new > Class. The new class has been created. Do you want to add it to the current project? > Yes continuava a dar o erro: /home/joao/Documents/workspace/testing/main.cpp|7|undefined reference to `MyClass::MyClass()'| fechei o Codeblocks. Abri novamente em recent projects, F9 (Run) e funcionou sem erros... Será problema do IDE? Título: Re: Classes em Ficheiros Publicado por: ivancea96 en 17 Abril 2016, 01:42 am Tal vez no se hubiera guardado el proyecto, es lo que se me ocurre. Si te vuelve a pasar, dale click derecho sobre el proyecto y "Guardar proyecto", para ver si es eso.
Título: Re: Classes em Ficheiros Publicado por: ber0x88 en 17 Abril 2016, 01:57 am Criei o projeto de novo.
Save all files, project, workspace, everything -> undefined reference to `MyClass::MyClass()'| Fecho e volto a abrir em recent projects e funciona... :laugh: |