본문 바로가기

공부/c++

virtual함수와 라이브러리와의 관계 만약 C++ 을 사용하지 않는다면, host 프로그램1에서 함수 포인터를 이용하여 기능들을 호출할텐데, C++ 을 사용할 경우에는 class의 member function 을 virtual 로 해 놓은 후, virtual로된 클래스를 상속받아서 virtual로된 클래스에 관련된 라이브러리의 내용을 overriding 시킨다. 그 후, host 프로그램에서는 부모 class의 pointer로 자식 클래스를 가리킨 후, virtual 로 된 함수를 호출하면 되겠다. 그림으로 보면 다음과 같다. 동적 library 를 사용하는 프로그램의 모식도. host 프로그램은 compile 시 순수추상함수 (pure virtual function)를 호출한다. 동적으로 올라갈 library는 순수추상함수를 갖고 있는 클.. 더보기
참조의 정보(참조 값)에 대한 이해 컴퓨터 구조에서 배웠던 내용이 아닐까하고 생각해본다... 더보기
WaitForMultipleObjects함수 HANDLE objects[3];objects[0] = pParent->m_StopThread;objects[1] = reqsem;objects[2] = check_timer; DWORD result; result = WaitForMultipleObjects(3, objects, FALSE, INFINITE); if(result == WAIT_FAILED){} WaitForMultipleObjects함수 호출 시 WaitForMultipleObjects함수에서 멈춰 있을 것으로 예상했지만WAIT_FAILED을 반환할 때에는 WaitForMultipleObjects함수 안의 objects배열의 요소가 NULL로 되어 있지 않은지 검사해 봐야 함 더보기
std::thread 클래스 http://callstack.tistory.com/19http://www.cplusplus.com/reference/mutex/unique_lock/http://forums.codeguru.com/showthread.php?305166-Windows-SDK-Thread-How-to-end-a-thread 더보기
교차 포함에 의한 오류 http://ekessy.tistory.com/20 더보기
stl 개요 http://woos798.tistory.com/74 더보기
stl erase & remove http://valley.egloos.com/viewer/?url=http://h2ostudio.egloos.com/4343561 더보기
deque 덱이라고 읽고 Deque라 쓰지.풀어서 쓰면 Double Ended Que 라고 해.큐에 대해서 알지 모르겠네.기본 자료구조를 공부한사람이면 알고 있을거야.큐라고 하는건 자료가 있으면 먼저 집어넣은놈이 먼저빠지는 형태를 말하는데,이걸 이용해서 스택과 큐를 결합한게 Deque여.스택은 먼저들어오는놈이 마지막에 빠져.이 둘을 합치면 " 먼저 들어온 놈 "(앞) 이든 " 나중에 들어온 놈 "(뒤) 이든 빼는게 자유롭게 된다 이말!Double Ended 잖아? 앞, 뒤 모두를 End 로 만들어놓은거거든 ㅇㅇVector는 뒤에있는 애를 뺄때 속도가 빠르잖아?이놈도 뒤에있는놈이 빠른건 마찬가진데 앞도 뒤니까 앞,뒤 모두 빠르다 이말이지.구조상으론 앞 뒤 모두 끝이기때문에 중간점이 사실 스타트지점이야.하지만 우리가 .. 더보기