void SetAt( POSITION pos, CObject* newElement );
Parameters
pos
The POSITION of the element to be set.
newElement
The CObject pointer to be written to the list.
Remarks
A variable of type POSITION is a key for the list. It is not the same as an index, and you cannot operate on a POSITION value yourself. SetAt writes the CObject pointer to the specified position in the list.
You must ensure that your POSITION value represents a valid position in the list. If it is invalid, then the Debug version of the Microsoft Foundation Class Library asserts.
Example
CObList list;
CObject* pa;
POSITION pos;
list.AddHead( new CAge( 21 ) );
list.AddHead( new CAge( 40 ) ); // List now contains (40, 21).
if( ( pos = list.GetTailPosition()) != NULL )
{
pa = list.GetAt( pos ); // Save the old pointer for
//deletion.
list.SetAt( pos, new CAge( 65 ) ); // Replace the tail
//element.
delete pa; // Deletion avoids memory leak.
}
#ifdef _DEBUG
afxDump.SetDepth( 1 );
afxDump << "SetAt example: " << &list << "\n";
#endif
The results from this program are as follows:
SetAt example: A CObList with 2 elements
a CAge at $4D98 40
a CAge at $4DB8 65
CObList Overview | Class Members | Hierarchy Chart
See Also CObList::Find, CObList::GetAt, CObList::GetNext, CObList::GetPrev