책/삽질 헤프닝(5)
-
error c1854 미리 컴파일된 헤더를 개체 파일 some.obj 에 만드는 동안 구성된 정보를 덮어 쓸 수 없습니다
error C1854: cannot overwrite information formed during creation of the precompiled header in object file MSDS : http://msdn.microsoft.com/ko-kr/library/5a193hd8.aspx some.cpp 에서 .pch 파일을 '/ Yc 만들기' 옵션으로 생성 해준 후another.cpp 에서 '/Yc 만들기' 옵션을 설정 후, some.cpp 는 '/Yu 사용' 으로 바꾼 경우, PCH 파일 some.obj 개체 에 만드는 동안 덮어 쓸수 없다는 오류가 발생한다 MSDN 링크를 참조하면, 동일한 파일에 pch /Yc 옵션 지정 후 /Yu 옵션을 재지정 할 수 없다고 한다. __desclspec ..
2015.01.20 -
warning C4727 타임스탬프가 동일한 pch 파일
PCH 사용 시 stdafx.cpp 에서만 "헤더만들기 /Yc" 설정을 하고나머지 파일들은 "헤더사용 /Yu" 설정한다 MSDN : http://msdn.microsoft.com/ko-kr/library/ms235540.aspx
2015.01.20 -
.h 파일을 #include 하는 순서
작성중... 아직까지 상황파악이 정확히 잘안되는 당황스런 컴파일에러헤더파일을 인클루드한 순서에 따라 오류가 발생한다 차후에 분석해봐야겟다 #include "a.h"#include "b.h"
2015.01.17 -
error C3859: PCH에 대한 가상 메모리 범위를 초과했습니다.
error C3859: PCH에 대한 가상 메모리 범위를 초과했습니다. 명령줄 옵션을 '-Zm140' 이상으로 지정하여 다시 컴파일하십시오.fatal error C1076: 컴파일러 한계 : 내부 힙 한계에 도달했습니다. /Zm을 사용하여 한계를 더 높게 지정하십시오. StdAfx 미리 컴파일된 헤더 생성 시에 발생한 에러, 미리 컴파일된 헤더의 용량의 PCH 할당된 용량보다 클 경우 발생한다 프로젝트 속성->C/C++->명령줄 에 -Zm값 을 설정해주면 된다 Zm값 용량10 - 5MB100 - 50MB 2000 - 1000MB (max)[출처] error C3859: PCH에 대한 가상 메모리 범위를 초과했습니다.에러|작성자 찐남자
2015.01.13 -
template 과 typedef 선언,정의
templatetypedef struct Node //컴파일 에러{Datatype data;Node* prev;Node* next;}; 위와 같이 선언,정의할 경우에 컴파일에러 발생 typedef 선언은 기존의 형식을 다른 형식의 동의어를 만들어 주는데,Node 구조체는 template struct 이므로 특수화가 되기 전에는 형식(기존의)을 알 수 없다따라서 typedef 선언을 할 수 없으므로 에러발생 templatestruct Node{Datatype data;Node* prev;Node* next;}; C++ 부터는 struct 다음에오는 태그명만으로도 사용자정의타입명으로 쓸 수 있으므로 typedef 를 쓰지않도록 한다
2015.01.09