CObList::RemoveAt
이 목록에서 지정 된 요소를 제거합니다.
void RemoveAt(
POSITION position
);
매개 변수
- position
위치 목록에서 제거할 요소입니다.
설명
요소에서 제거는 CObList, 개체 포인터를 목록에서 제거 합니다.이 개체를 삭제 하려면 책임이 있습니다.
않은지 확인 해야 해당 위치 값 목록에서 올바른 위치를 나타냅니다.유효 하지 않은 경우 다음 Mfc 라이브러리의 디버그 버전을 어설션 합니다.
다음 표에서 다른 멤버와 비슷한 함수를 보여 줍니다. CObList::RemoveAt.
클래스 |
멤버 함수 |
---|---|
무효가 RemoveAt (위치 위치 ); |
|
무효가 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