GetNext()는 pos값을 다음 값으로 만들기 때문에

먼저 임시변수를 만들어 현재 pos값을 저장해두고 그 임시변수 위치에 해당하는 요소를 지워야 한다.


POSITION pos = list.GetHeadPosition();

POSITION posTemp;

while(pos != NULL) {

    posTemp = pos;

    CMyType myType = list.GetNext(pos);

    if(....CMyType이 요소삭제조건일 때) {

       list.RemoveAt(posTemp);

    }

}



POSITOIN타입이

typedef __POSITION* POSITION;

와 같이 정의되어있기 때문에 getNext()에서 pos값을 변경할 수 있는것이다.

+ Recent posts