분명 이상없는 코드인데
헤더파일 꼭 작성 할 때마다
저렇게 빨간색 밑줄 그어지고 마우스커서 갔다대면
Error: PCH 경고: 헤더 중지가 매크로 또는 #if 블록에 있으면 안됩니다. intellisense PCH 파일이 생성되지 않습니다.
라는 문장 출력됨;;
근데 다 완성시켜서 컴파일 시키면 잘 됨.
분명 이상없는 코드인데
헤더파일 꼭 작성 할 때마다
저렇게 빨간색 밑줄 그어지고 마우스커서 갔다대면
Error: PCH 경고: 헤더 중지가 매크로 또는 #if 블록에 있으면 안됩니다. intellisense PCH 파일이 생성되지 않습니다.
라는 문장 출력됨;;
근데 다 완성시켜서 컴파일 시키면 잘 됨.
헤더에서 using namespace를 쓰는건 바람직하지 않음
아니 using
열혈강의 예제보고 쓴건데.. 그나저나 왜 안좋아요?
포함파일과 일반 소스파일에서 같이허버리면 홍수남 ~~~
스택오버플로 왈 일단 헤더 맨 앞에 #pragma once 넣어주면 없어진다그러고
내가보기엔 그보다 cpp에서 stdafx.h를 잘 이해하지 못하고 쓴게 아닌가싶다
후보적핏도생님 홍수가 뭔말이죠? 그리고 using은 헤더파일에 선언되있는거 인쿠르드 해도 적용안되죠? cpp 파일에서 또 선언해야하죠?
ㅏ 님이 하시는 말씀 뭐가 뭔지 모르겠어요 ㅠㅠ stdafx.h 는 뭐고 #pragma once 는 뭔가요?
오류를 홍수라하죠. using문은 인쿠루드 해도 적용 됩니다. hpp파일 같은걸 따로 만들어 쓰세요.
그럼 stdafx 얘기는 무시하고 #pragma once를 저 헤더 맨 첫줄에 넣어봐여
헉 진짜 빨간 밑줄 사라졌어요. 이거 뭐에요::?? ㄷㄷ
그리고 using 다른 오브젝트를 호출하므로 헤더에 선언하는 것은 바람직하지 않습니다.
심각한 경우 헤더가 겹쳐버림.
#ifndef로 중복 방지해도 안되요?
정확한건 전처리기를 봐야 알겠지만, 중복방지는 되긴 합니다. 다만 using으로 호출한건 전처리기가알아서 걸러주지 않습니다. 심각한 경우 포함된 모든 헤더에서 치명적인 오류가 끊임없이 리스트 될 것 입니다. using을 typedef로 사용하지 않는 내에서요