본문 바로가기

#define 문법.. while, Singleton while 문을 사용하다보면 의도치 않게 기본적인 실수를 할때가 있습니다..그러다 잘못하면 무한루프에 빠지게 되는데... #ifdef _DEBUG #define WHILE WHILE_DEBUG #else #define WHILE while #endif // DEBUG #define WHILE_DEBUG(type) \ int __nCount = 0; \ while( type ) \ if(++__nCount > 100000) \ { printf("[FileName:%s][Func:%s][Line:%d]",__FILE__,__FUNCTION__,__LINE__); break; } \ else \ void main() { int nCnt = 0; WHILE(1) { ++nCnt; } printf("결과값 : %.. 더보기
visual studio 2012에서 gtest 컴파일시 std::touple 에러 해결방법.. vc11에서 google test나 google protocol 등... google 프로젝트등을 빌드하면 std::tuple 등의 에러가 나게 되는데그에따른 해결방법은. stdafx.h의 윗부분에다가#define _VARIADIC_MAX 10을 써주거나.. 프로젝트 -> 속성 -> C/C++ / 전처리기 -> 전처리기 정의에다가 _VARIADIC_MAX=10; 을 써주면 된다.. vc에서 사용중이 tuple이 표준안에 안맞아서 생기는거라고 하는데...2012 RC에서도 생기던 문제라 fix가 되어야 하는데 아직까지 안되고 있는듯... vs 2012(vc 11) 에 들어와서 기존에 tr1에 있던 tuple를 std에 포함시키면서tuple의 템플릿 갯수를 기본 5개(vc10과 boost는 10개)로 줄이면.. 더보기
tbb Visual studio 2012에서 빌드하기.. vs2010까지는 바이너리만 받아서 사용해도 됬었는데..TBB최신버전.. 2012/06/28일자 tbb 4.0 update 5 버전에는 vs2012에서 컴파일된 버전이 제공되지 않습니다...그래서 결국 직접 컴파일을 해야되는데...소스 받아서 직접 컴파일하면... OTL... 에러 발생!! 일단 std::copy_exception 관련 에러가 발생되는데 수정하는데 2가지 방법이 있습니다.. 가장 쉬운건..std::copy_exception 부분을 std::make_exception_ptr 이걸로 수정하는 방법과..프로젝트 속성 -> C/C++ -> 명령줄 -> 추가옵션 부분에 /DTBB_USE_CAPTURED_EXCEPTION=1 이걸 추가 하는방법... 둘중 아무거나 하신후 컴파일을 다시 실행하면..... 더보기