|
RXmlNode와 RXmlDom이라는 두개의 클래스가 있습니다. 앞으로 클래스의 수는 늘어날예정이고요.
문제는 이들 클래스가 서로서로를 인식해야 합니다. 아래와 같이 사용될 것이거든요.
//// RXmlNode.h의 내용 -----------------------------------
#ifndef RXMLNODE_H
#define RXMLNODE_H
#include "RXmlUtil.h"
#pragma once
class RXmlNode
{
protected:
RXmlDom motherDom;
public:
RXmlNode(void);
~RXmlNode(void);
};
#endif RXMLNODE_H
//// RXmlDom.h의 내용 -----------------------------------
#ifndef RXMLDOM_H
#define RXMLDOM_H
#include "RXmlUtil.h"
#pragma once
class RXmlDom
{
protected:
RXmlNode rootNode;
public:
RXmlDom(void);
~RXmlDom(void);
};
#endif RXMLDOM_H
즉, 이렇게 서로서로를 인식하게 만들고 실제 프로젝트에서는 RXmlUtil.h하나만
인클루드해서 사용할 수 있게 하려고 다음과 같이 작성해봤습니다.
#ifndef RXMLUTIL_H
#define RXMLUTIL_H
#include "RXmlDom.h"
#include "RXmlNode.h"
#endif RXMLUTIL_H
그렇지만 컴파일을 하니 다음과 같은 식으로 오류만 나는군요.
error C2146: 구문 오류 : ';'이(가) 'xmlDom' 식별자 앞에 없습니다.
error C2501: 'RXmlNode::RXmlDom' : 저장소 클래스 또는 형식 지정자가 없습니다.
error C2501: 'RXmlNode::xmlDom' : 저장소 클래스 또는 형식 지정자가 없습니다.
....
여러개 클래스들이 서로서로를 인식하고, 다른 프로젝트에서는 헤더화일 하나만 포함시키는 것으로 이들 클래스 전부를 사용할 수 있게 하려면 어떻게 헤더화일을 설정해야 하나요?
|