안녕하세요 c++공부중인 학생입니다.c++ 더블 버퍼관련 공부중이였는데,
제가 이해한 바로는버퍼0 과 버퍼1이있으면
버퍼0 이 비춰지고 있으면 버퍼 1에 그려놓고 버퍼 1로 한번에 전환
버퍼1 이 비춰지고 있으면 버퍼 0에 그려놓고 버퍼 0로 한번에 전환하는 방식이라고 이해햇는데요
그래서 소스코드를 따라서 짜봤습니다.
그런데 막상 해보니까 버퍼 1에 들어가있는 그림은 출력이 안되고,
메인.cpp보시면check가 0, 1, 2, 3일때 각각 ★☆○● 을 출력하도록 했는데
왜 이렇게 되는건지 설명해주시면 감사하겠습니다. 제가 어디를 잘못 코딩하여 버퍼 0만 출력이 되는건지 여쭤봅니다.
6시간째 인강하고 코드 비교하고 디버깅하면서 이유를 찾으려고 했는데 도저히 감을 못잡겠어서 질문드립니다.ㅠㅠ
WriteFile(m_hBuffer[m_BufferIndex], string, strlen(string), &dw, NULL);
이게 버퍼에다가 적는 string을 넣는 함수가 맞는지부터가 의문입니다ㅠㅠ
왜 버퍼 0번은 출력이 되는데 버퍼 1은 출력이 안되는지 알려주시면 감사하겠습니다.ㅠㅠ
밑에 소스코드 입니다.ㅠㅠ 다소 길수도 있으나 부탁드리겠습니다.ㅠㅠ
댓글을 작성하려면 로그인해야 합니다.
tls6357 4년 전
안녕하세요 c++공부중인 학생입니다.c++ 더블 버퍼관련 공부중이였는데,
제가 이해한 바로는버퍼0 과 버퍼1이있으면
버퍼0 이 비춰지고 있으면 버퍼 1에 그려놓고 버퍼 1로 한번에 전환
버퍼1 이 비춰지고 있으면 버퍼 0에 그려놓고 버퍼 0로 한번에 전환하는 방식이라고 이해햇는데요
그래서 소스코드를 따라서 짜봤습니다.
그런데 막상 해보니까 버퍼 1에 들어가있는 그림은 출력이 안되고,
버퍼0에 들어가 있는 그림만 출력이 되는 것 같아서 의문이 들어서 여쭤봅니다.
메인.cpp보시면check가 0, 1, 2, 3일때 각각 ★☆○● 을 출력하도록 했는데
막상 소스코드를 돌려보면★○만 번갈아가면서 출력되더라구요....
왜 이렇게 되는건지 설명해주시면 감사하겠습니다. 제가 어디를 잘못 코딩하여 버퍼 0만 출력이 되는건지 여쭤봅니다.
6시간째 인강하고 코드 비교하고 디버깅하면서 이유를 찾으려고 했는데 도저히 감을 못잡겠어서 질문드립니다.ㅠㅠ
WriteFile(m_hBuffer[m_BufferIndex], string, strlen(string), &dw, NULL);
이게 버퍼에다가 적는 string을 넣는 함수가 맞는지부터가 의문입니다ㅠㅠ
왜 버퍼 0번은 출력이 되는데 버퍼 1은 출력이 안되는지 알려주시면 감사하겠습니다.ㅠㅠ
밑에 소스코드 입니다.ㅠㅠ 다소 길수도 있으나 부탁드리겠습니다.ㅠㅠ