2012-08-04 2 views
0

이 파일은 Visual C++ 2010에서 컴파일됩니다.C++의 구조체에서 forward 선언 컴파일러 오류

컴파일되지 않고 MINGW가 컴파일되지 않습니다.

struct nextifcondinfo 
{ 
    hash_map <string, nextifcondinfo> next; 
    int action; 
}; 

I get an error message: 
Description Resource Path Location Type 
forward declaration of 'struct nextifcondinfo'  C/C++ Problem 

mingw에서 어떤 스위치를 사용하여 해결할 수 있는지 알려주실 수 있습니까? 아니면 다른 아이디어가 있습니까?

+0

스위치가 도움이되지 않는 경우 컴파일러가 부족할 수 있습니다. ( – YePhIcK

+0

hash_map이란? – ForEveR

+0

해시 맵은 하나의 키에 대해 하나의 요소가있는 배열 형 구조입니다. key1-> element1 및 key2 -> element2 이런 식으로 일반적으로 요소에 대한 빠른 (및 일정한) 액세스에 사용됩니다. –

답변

5

코드가 컴파일되어야한다고 생각하지 않지만 hash_map 구현에 의존합니다. VC++에서 운이 좋았고 MinGW에서 불운 한 것 같습니다.

당신은뿐만 아니라 스마트 포인터를 사용할 수 있습니다 예를

struct nextifcondinfo 
{ 
    hash_map <string, nextifcondinfo*> next; 
    int action; 
}; 

를 들어, 사용 포인터를 해결합니다.

관련 문제