다음을 통해 공유


CObList::RemoveAt

이 목록에서 지정 된 요소를 제거합니다.

void RemoveAt( 
   POSITION position  
);

매개 변수

  • position
    위치 목록에서 제거할 요소입니다.

설명

요소에서 제거는 CObList, 개체 포인터를 목록에서 제거 합니다. 이 개체를 삭제 하려면 책임이 있습니다.

않은지 확인 해야 해당 위치 값 목록에서 올바른 위치를 나타냅니다. 유효 하지 않은 경우 다음 Mfc 라이브러리의 디버그 버전을 어설션 합니다.

다음 표에서 다른 멤버와 비슷한 함수를 보여 줍니다. CObList::RemoveAt.

클래스

멤버 함수

사용할 때

무효가 RemoveAt (위치 위치 );

CStringList

무효가 RemoveAt (위치 위치 );

예제

목록을 반복 하는 동안 요소를 제거할 때 주의 해야 합니다. 다음 예제에서는 올바른 보장 제거 기술을 위치 값에 대 한 GetNext.

참조 CObList::CObList 에 있는 CAge 클래스.

CObList list;
POSITION pos1, pos2;
CObject* pa;

list.AddHead(new CAge(21));
list.AddHead(new CAge(40));
list.AddHead(new CAge(65)); // List now contains (65 40, 21). 
for (pos1 = list.GetHeadPosition(); (pos2 = pos1) != NULL;)
{
    if (*(CAge*) list.GetNext(pos1) == CAge(40))
    {
        pa = list.GetAt(pos2); // Save the old pointer for 
                               //deletion.
        list.RemoveAt(pos2);
        delete pa; // Deletion avoids memory leak.
    }
}
#ifdef _DEBUG
   afxDump.SetDepth(1);
   afxDump << _T("RemoveAt example: ") << &list << _T("\n");
#endif      

이 프로그램의 결과 다음과 같습니다.

RemoveAt example: A CObList with 2 elements

a CAge at $4C1E 65

a CAge at $4B22 21

요구 사항

헤더: afxcoll.h

참고 항목

참조

CObList 클래스

계층 구조 차트