Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Lukas

[Resolvido] Problema com ifndef e referenciamento entre classes

Recommended Posts

Seguinte, estou com um problema de referenciamento entre classes. Tipo assim, uma classes a tem um atributo da classe b, e a classe b tem um atributo da classe a, ai quando a classe b vai ser preprocessada ela não acha a classe a.

 

Preparei um exemplo mais simples, pra ilustrar a situação:

 

a.h

#ifndef _A_
#define _A_

#include "b.h"

class a
{
	public:
		b valueB;
};

#endif

b.h

#ifndef _B_
#define _B_

#include "a.h"

class b
{
	public:
		a valueA;
};

#endif

Assim, dando um include no a.h, vai me resultar alguns erros "missing type specifier", e talz... Eu to usando o Visual C++ 2008 Express Edition, qualquer ajuda é muito bem vinda... Obrigado!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Problema resolvido! Isso se chama depedência cíclica, o código resolvido fica:

 

a.h

#ifndef _A_
#define _A_

#include "b.h"

//Forward declaration
class b;

class a
{
	public:
		b valueB;
};

#endif

b.h

#ifndef _B_
#define _B_

#include "a.h"

//Forward declaration
class a;

class b
{
	public:
		a valueA;
};

#endif

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.