CObArray::SetAt

设置数组元素位于指定索引处。

void SetAt(
   INT_PTR nIndex,
   CObject* newElement 
);

参数

  • nIndex
    大于或等于0并且小于或等于 GetUpperBound返回的值的整数索引。

  • newElement
    该数组要插入的对象指针。NULL 值允许的。

备注

SetAt 不会导致数组增大。如果您希望该数组自动增大,请使用 SetAtGrow

您必须确保索引值表示数组中的有效位置。如果它位于区域之外,则库的调试版本断言。

下表显示类似于 CObArray::SetAt的其他成员函数。

成员函数

CByteArray

void SetAt( INT_PTRnIndex, BYTE newElement );

CDWordArray

void SetAt( INT_PTRnIndex, DWORD newElement );

CPtrArray

void SetAt( INT_PTRnIndex, void* newElement );

CStringArray

void SetAt( INT_PTRnIndex, LPCTSTR newElement );

CUIntArray

void SetAt( INT_PTRnIndex, UINT newElement );

CWordArray

void SetAt( INT_PTRnIndex, WORD newElement );

示例

提供用于所有集合示例的列表 CAge 选件类参见 CObList::CObList

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.SetAt(0, new CAge(30));  // Replace element 0.
   delete pa; // Delete the original element at 0.
}
#ifdef _DEBUG
   afxDump.SetDepth(1);
   afxDump << _T("SetAt example: ") << &arr << _T("\n");
#endif      

从此过程的结果如下:

SetAt example: A CObArray with 2 elements

[0] = a CAge at $47E0 30

[1] = a CAge at $47A0 40

要求

Header: afxcoll.h

请参见

参考

CObArray选件类

层次结构图

CObArray::GetAt

CObArray::SetAtGrow

CObArray::ElementAt

CObArray::operator [ ]