본문 바로가기

컴퓨터219

작업표시줄에 아이콘 생기지 않게 하기 내가 만든 프로그램의 아이콘이 작업 표시줄(task bar)에 표시되지 않도록 해보자. HWND hWnd = AfxGetMainWnd()->GetSafeHwnd(); long style = GetWindowLong(hWnd, GWL_EXSTYLE); style &= ~(WS_VISIBLE); style |= WS_EX_TOOLWINDOW; style &= ~(WS_EX_APPWINDOW); ::ShowWindow(hWnd, SW_HIDE); SetWindowLong(hWnd, GWL_EXSTYLE, style); ::ShowWindow(hWnd, SW_SHOW); 위와 같이 하면 된다. 구글에서 "C++ hide window from taskbar" 로 검색하면 나오는 첫 결과인 이 페이지를 따랐는데, .. 2015. 4. 21.
bind1st 와 bind2nd STL 의 bind1st 와 bind2nd 함수의 의미 및 사용법을 살펴 보자. bind1st 와 bind2nd 함수는 모두 binary function object 를 unary function object 로 바꾸는 역할을 한다. 이 때, 그 binary function 의 첫 번째 혹은 두 번째 인자를 지정하느냐에 따라 bind1st 혹은 bind2nd 함수를 사용하게 되는 것이다. 여러 가지 이해해야 할 개념이 있는데 차근차근 살펴 보자. unary function: 인자로 한 개의 값만을 받는 함수. binary function: 인자로 두 개의 값을 받는 함수. unary function 의 예로는 NOT 연산자 같은 것이 있다. 또는 집합에서의 여집합 연산자 역시 unary function .. 2014. 12. 17.
포인터와 const, 배열에 대한 포인터 나중에 참고할 목적으로 작성해 놓는다, ㅋ. 원리가 없기에 외워야 하나 그러긴 귀찮은데 필요한 경우가 있으니 말이다, ㅋ. code는 /chip_data/GEO/make_tissue_specific_gene_expr_fig.cpp 95번째 줄의 기본형태는 const unsigned char (* const V )[3] 앞의 const 에 의해 포인터형 변수 V 가 가리키는 주소에 있는 값을 변경하지 않을 것임을 명시, 뒤의 const 에 의해 포인터형 변수 V 가 가리키는 주소를 변경하지 않을 것임을 명시, unsigned char 의 3개의 요소로 된 배열을 가리키는 포인터 선언 방식. 역시나. 한 눈에 와 닿지 않는다. 그림으로 표현해 보자. V 라는 변수 역시 메모리에 존재하는 값이니 그 자체가 주.. 2014. 12. 4.
함수 포인터가 boolean 으로 출력된 경우 이번 에러는... 뭔가 논리적으로 원인을 찾아 가기 힘든 경우였는데, 이런 상황을 알고 있다면 후에 이런 상황을 맞딱뜨렸을 때 이와 같은 원인 역시 고려할 수 있을 것이다. 결론적으로 얘기하자면, std::cout 으로 함수 포인터를 출력할 경우 boolean 으로 형변환되어 1 이 출력된다. 만약 함수의 출력값이 엉뚱하게도 계속 1 로 나온다면 이와 같은 원인 때문일 수 있다. 문제는 다음과 같은 함수를 출력하는 상황에서 발생했다. 문제가 생겼던 부분은 아래 쪽 코드인 make_stat_page.cpp 에서 130 번째 줄이다. 확인차 131번 줄도 만든 것인데, 여하튼 저렇게 했기 때문에 get_current_time 함수의 원본인 위쪽 코드의 내용에도 불구하고 계속 1 만 출력이 되었다. 그것은 곧.. 2014. 12. 1.