다음을 통해 공유


CObArray::RemoveAt

배열 내의 지정 된 인덱스에서 시작 하는 하나 이상의 요소를 제거 합니다.

void RemoveAt(
   INT_PTR nIndex,
   INT_PTR nCount = 1 
);

매개 변수

  • nIndex
    0 보다 크거나 같은 정수 인덱스 및 반환 값 GetUpperBound.

  • nCount
    제거할 요소의 수입니다.

설명

프로세스에서 모든 요소 제거 요소 위에서 아래쪽으로 이동합니다.그 감소 위 배열이 바인드된 메모리를 해제 하지 않습니다.

다음 제거 지점 위에 배열에 포함 된 것 보다 더 많은 요소를 제거 하려고 하면 라이브러리의 디버그 버전을 어설션 합니다.

RemoveAt 작동 제거는 CObject 포인터의 배열, 하지만 개체 자체를 삭제 하지 않습니다.

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

클래스

멤버 함수

CByteArray

void RemoveAt( INT_PTR nIndex, INT_PTR nCount = 1 );

CDWordArray

void RemoveAt( INT_PTR nIndex, INT_PTR nCount = 1 );

해당 클래스가

void RemoveAt( INT_PTR nIndex, INT_PTR nCount = 1 );

CStringArray

void RemoveAt( INT_PTR nIndex, INT_PTR nCount = 1 );

CUIntArray

void RemoveAt( INT_PTR nIndex, INT_PTR nCount = 1 );

CWordArray

void RemoveAt( INT_PTRnIndex, INT_PTR nCount = 1 );

예제

참조 하십시오 CObList::CObList 에 CAge 모든 컬렉션 예제에 사용 되는 클래스입니다.

CObArray arr;
CObject* pa;

arr.Add(new CAge(21)); // Element 0
arr.Add(new CAge(40)); // Element 1
if((pa = arr.GetAt(0)) != NULL)
{
    arr.RemoveAt(0);  // Element 1 moves to 0.
    delete pa; // Delete the original element at 0.
}
#ifdef _DEBUG
   afxDump.SetDepth(1);
   afxDump << _T("RemoveAt example: ") << &arr << _T("\n");
#endif      

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

RemoveAt example: A CObArray with 1 elements

[0] = a CAge at $4606 40

요구 사항

헤더: afxcoll.h

참고 항목

참조

CObArray 클래스

계층 구조 차트

CObArray::SetAt

CObArray::SetAtGrow

CObArray::InsertAt