문제

컨테이너에 배치하고 싶은 데이터 스트림이 있습니다. 이 컨테이너는 고정 크기 또는 런타임시 특정 크기로 동적으로 제한됩니다. 후자는 바람직 할 수있다.

컨테이너가 가득 차면 가장 오래된 데이터가 제거됩니다.

a를 사용 하여이 데이터를 표시하고 싶습니다 wxvlistbox 디스플레이를 완전히 제어해야하기 때문입니다. 그러나 문제가 있습니다 : 전화 Ondrawitem 일단 컨테이너가 가득 차면 각각 호출한다는 원자의 의미가 아닙니다. Ondrawitem 움직이는 데이터에 액세스하면 결과는 요소가 누락 된 비 연속 디스플레이가됩니다.

이것은 기본 어레이와 같은 인덱싱이있는 컨테이너에서 확실히 사실입니다. Ondrawitem.

배열과 같은 인덱싱을 시뮬레이션 할 수 있습니다 std ::지도 Ierator Indexing을 사용하여 키가 순차적 인 정수 인 경우 모든 항목을 주문하고 맵을 아주 쉽게 잘라낼 수 있지만 비효율적 인 해킹처럼 보입니다.

이것을 어떻게 해결할 수 있습니까? 내가 생각하지 않은 다른 아이디어 나 컨테이너가 있습니까?

도움이 되었습니까?

해결책

가장 좋은 방법은 전체 컨테이너 상태를 게으르게 관리하는 것입니다. ongrapbackground. 그렇게하면 UI 자체가 데이터가 후속 호출에서 정적으로 유지되는지 확인합니다. Ondrawitem, 컨테이너로 Deque를 사용합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top