Program Language/C & C++

C4430 : missing type specifier - int assumed.

야곰야곰+책벌레 2023. 12. 15. 13:53
728x90
반응형

오래전에 해결해 두고 또 같은 에러로 헤매고 있었다니.. 아 놀라워라..

C++에서 순환 참조(?)하게 되면 이런 에러가 뜬다.

//A.h    
#include "B.h"
class A{
    B* b;
    ..
};

//B.h
#include "A.h"
class B{ 
    A* a; // error error C4430: missing type specifier - int assumed.
}

이런 식으로 말이다.

 

결국 전방 선언을 이용해서 해결해야 한다.

//B.h
class A; // change the include of A.h to forward declaration
class B { 
    A* a;
};

대신 소스파일에서 해당 헤드파일을 포함해주면 된다.

728x90
반응형