Problema com definição de classe em C

18/05/2008

0

Sou iniciante em C++ e estou precisando de ajuda.

Peguei uma apostila de C++ na internet, incluse é uma apostila muito boa, e nela vem explicando tudo sobre POO com C++.

Tem um capítulo que fala sobre compilação de um programa dividido em vários arquivos. Diz o seguinte: ´podemos fazer a declaração de uma nova classe em um arquivo .h (cabeçalho), implementar essa classe em um segundo arquivo .cpp incluindo a #include ´nome_do_arquivo_h.h´ e utilizar essa classe em um programa qualquer, simplesmente incluindo include ´nome_do_arquivo_h.h´.

O problema é que quando crio uma nova classe, por exemplo, classe contador, e coloco somente sua declaração com seus dados e funções em um arquivo .h e deixo sua implementação em outro arquivo (.cpp) incluindo o include ´nome_do_arquivo_h.h´, o programa não compila.
Suponhamos que tenha a função incrementa na classe contador.
Quando tento compilar o programa o compiliador exibe a seguinte mensagem:

undefined reference ´contador::incrementa(void)´

Mas quando faço a declaração da classe e sua implementação no mesmo arquivo, seja .h ou .cpp, funciona perfeitamente. O problema é quando divido em dois arquivos.

Estou usando o Dev-C++ 4.9.9.2.

Alguém pode me ajudar?


Jonathan Bispo

Jonathan Bispo

Responder

Posts

19/05/2008

Massuda

O .H que declara a classe precisa também ser incluído no .CPP que implementa a classe via #include.


Responder

Que tal ter acesso a um e-book gratuito que vai te ajudar muito nesse momento decisivo?

Ver ebook

Recomendado pra quem ainda não iniciou o estudos.

Eu quero
Ver ebook

Recomendado para quem está passando por dificuldades nessa etapa inicial

Eu quero

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar