CObArray::SetAt

void SetAt( int nIndex, CObject* newElement );

Parameters

nIndex

An integer index that is greater than or equal to 0 and less than or equal to the value returned by GetUpperBound.

newElement

The object pointer to be inserted in this array. A NULL value is allowed.

Remarks

Sets the array element at the specified index. SetAt will not cause the array to grow. Use SetAtGrow if you want the array to grow automatically.

You must ensure that your index value represents a valid position in the array. If it is out of bounds, then the Debug version of the library asserts.

The following table shows other member functions that are similar to CObArray::SetAt.

Class Member Function
CByteArray void SetAt( int nIndex, BYTE newElement );
CDWordArray void SetAt( int nIndex, DWORD newElement );
CPtrArray void SetAt( int nIndex, void* newElement );
CStringArray void SetAt( int nIndex, LPCTSTR newElement );
CUIntArray void SetAt( int nIndex, UINT newElement );
CWordArray void SetAt( int nIndex, WORD newElement );

Example

See CObList::CObList for a listing of the CAge class used in all collection examples.

// example for CObArray::SetAt

   CObArray array;
   CObject* pa;

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

The results from this program are as follows:

SetAt example: A CObArray with 2 elements
    [0] = a CAge at $47E0 30
    [1] = a CAge at $47A0 40

CObArray OverviewClass MembersHierarchy Chart

See Also   CObArray::GetAt, CObArray::SetAtGrow, CObArray::ElementAt, CObArray::operator []