본문 바로가기

2016/11

충격 AfxGetMainWnd() 함수 출처 : http://egloos.zum.com/xuny/v/2078275 전에 Visual Studio 6.0 으로 작성하던 mfc 프로그램을 Visual Studio 2008 로 변환을 하였다. 보안이 강화됐는지 어쨌는지.. 수없이 많은 wanning 이 뜨고.. 젠장.. 사용하지 말기를 권고하는 함수들에 대해서 안전한 함수로 교체를 하였다.. 이거야 내 전문인 복사 컨트롤+V 이니.. 별 어려움이 없었는데.. MFC 6.0 으로 컴파일을 하면 분명히 실행이 되는 코드가 2008 에서 컴파일 하니 조낸 안되는 거였다. 디버깅을 해보니 범인은 AfxGetMainWnd() 함수 MFC 에서 윈도우간 통신을 위하여 저런 함수는 많이 사용되고 있는데.. 저 함수가 실행될때마다 다른 주소가 리턴이 되는걸 발견.. 더보기
오픈 소스 c++라이브러리 목록 출처 : http://ko.cppreference.com/w/cpp/links/libs 이 페이지는 특정 기능을 구현하기 위하여 구글링하는 시간을 낭비하지 않도록 오픈 소스 C++ 라이브러리 목록을 취합하는 것이다.다른 사람들에게 유용하다 싶은 라이브러리를 알고 있다면 여기에 링크를 추가해 달라.라이브러리를 소스 형태로 다운로드 할 수 있어야 한다는 것만 제외하고 링크를 추가하기 위한 어떠한 제약사항도 없다.페이지는 '그냥 있는 그대로' 제공된다. - 유용하게 사용되기를 바라지만, 어떠한 것을 보장하지는 않는다. 오래되었을 수도 있고, 클릭했을 때 잘못된 링크나 엉뚱한 곳으로 갈 수도 있다. 만약 그런 오류를 알게된다면 직접 고쳐주면 정말 좋겠다.일반Boost - 방대한 범용 라이브러리 콜렉션 (부스트 .. 더보기
error C2661: 'pcl::PointCloud<PointT>::operator new' : no overloaded function takes 3 arguments PCL 라이브러리를 사용하다보니 아래와 같은 오류가 발생하였다.error C2661: 'pcl::PointCloud::operator new' : no overloaded function takes 3 arguments PCL 라이브러리에서 제시한 방법으로 선언을 했지만 어이가 없게도 new 연산자에서 오류가 난다....PointCloud::Ptr cloud(new PointCloud);// x, y, z, r, g, b 구글링을 해보니 잘 나오지 않았는데 www.pcl-user.org 에서 heap을 늘려보라는 생각치도 못한 답변이.... 프로젝트의 속성 > C/C++ > 명령줄의 추가 옵션 부분에 /Zm1000를 입력하고 확인 버튼을 누르니 놀랍게도 오류가 사라졌다....factor의 값메모리 할당 .. 더보기
C++ 표준 라이브러리 헤더 파일 출처 : http://ko.cppreference.com/w/cpp/header C++ 표준 라이브러리 헤더 파일 C++ Standard Library header files C++ 표준 라이브러리의 인터페이스는 아래의 헤더 파일들 내에 정의되어 있습니다.유틸리티 라이브러리범용 유틸리티: 프로그램 통제, 동적 메모리 할당, 난수, 정렬 및 탐색시그널 관리를 위한 함수와 매크로 상수Macro (and function) that saves (and jumps) to an execution context가변 길이 인수 목록의 처리런타임 자료형 정보 유틸리티 (since C++11)std::type_index (since C++11)컴파일 시간 자료형 정보std::bitset 클래스 템플릿표준 알고리즘과 함께 .. 더보기
error C3859: PCH에 대한 가상 메모리 범위를 초과했습니다.에러 출처 : http://blog.naver.com/PostView.nhn?blogId=jinlee25&logNo=40088677597 error C3859: PCH에 대한 가상 메모리 범위를 초과했습니다. 명령줄 옵션을 '-Zm값' 이상으로 지정하여 다시 컴파일하십시오.fatal error C1076: 컴파일러 한계 : 내부 힙 한계에 도달했습니다. /Zm을 사용하여 한계를 더 높게 지정하십시오.툴만들려고 하니 날 당황스럽게 한 에러.위에러는 미리컴파일한 헤더 결과 용량이.. 미리 컴파일한 헤더 이용할때 생기는 PCH파일 할당용량이 보다 더 크게 될때 발생한다고 한다.(이렇게 쓰니 좀 이상해지네 아무튼 PCH 용량부족하다고VS가 츤츤데는것다)(미리 컴파일해 놓은 결과인 PCH 파일을 사용한다.)당황하지말고.. 더보기
error C2589 에 대한 고찰과 문제 해결방법 출처 : http://tommyhsm.tistory.com/100 MFC에서 PCL을 사용하려고 작업하는 중에, 다음과 같은 에러가 떴다. ...Warning C4003: 'max' 매크로의 실제 매개 변수가 부족합니다.error C2589: '(' : '::' 오른쪽에 잘못된 토큰이 있습니다.error C2988: 템플릿 선언/정의를 인식할 수 없습니다.error C2059: 구문 오류 : '::'... 도대체 뭐가 문제일까.. 하면서 고민 하던 중, 공통점은 max 매크로의 실제 매개 변수가 부족하다 라는 공통된 경고를 깨닫게 되었고, error C2589로 검색을 하던중, 한 블로그에 들어가서 문제점과 해결방법을 알게 되었다. 참조 블로그 링크 : http://blog.naver.com/smurfe.. 더보기
[OpenCV] RGB Color를 Grayscale로 변환하기 출처 : http://cinema4dr12.tistory.com/entry/OpenCV-RGB-Color%EB%A5%BC-Grayscale%EB%A1%9C-%EB%B3%80%ED%99%98%ED%95%98%EA%B8%B0 이번 글에서는 OpenCV에서 RGB 컬러를 Grayscale로 변환하는 방법에 대하여 알아보도록 하겠다. 우선 이론적으로 살펴보면, 가장 널리 사용되는 방법 중 하나가 Luma Coding(https://en.wikipedia.org/wiki/Grayscale)을 이용한 방법인데, 수식은 다음과 같다: 여기서, R', G', B'은 Red, Green, Blue 채널에 대한 비디오 시스템의 Gamma-compressed 값이다. 이들로부터 계산된 Y'은 비선형 Luma 컴포넌트(Non.. 더보기