이전게시판/C, C++
C3083 왼쪽의 기호는 형식이어야 합니다 에러 정방선언...
ㅇㅇㅇㅇㅇㅇㅇㅇㅇㅇㅇㅇㅇ
2018. 5. 3. 20:10
C3083 왼쪽의 기호는 형식이어야 합니다 에러
아무리 선언되어있는 헤더파일을 INCLUDE해도 'INFO 왼쪽의 기호는 형식이어야 합니다' 에러가 떴다..
찾아보니..... 전방선언에 가려져있었다....
예를들어 namespace PC::INFO::SKILL 클래스를 사용하려고 했다면...
아래처럼 PC namespace가 먼저 전방선언되어있었다...
Attack.h
namespace PC{
class LevelInfo;
}
class Attacak
{
typedef PC::INFO::SKILL SKILL_INFO
}
Skill class를 전방선언하면 해결
사실 PC::INFO::SKILL::SKILL_TYPE 이란 enum을 전방선언으로 가져와쓰고 싶었는데 안된다!!!
namespace PC
{
namepsace INFO
{
class SKILL;
struct SKILL::SKILL_TYPE;
}
}
이렇게 정방선언하고 SKILL_TYPE::ENUM쓰면 .......ENUM 정보가 없으므로 가져오지 못한다...