CObArray::SetAt
指定したインデックスの配列要素を設定します。
void SetAt(
INT_PTR nIndex,
CObject* newElement
);
パラメーター
nIndex
0 にゼロ以上で GetUpperBoundによって返される値により小さいか等しいの整数のインデックス。newElement
この配列に挿入するオブジェクトのポインター。null の値が許可されます。
解説
SetAt により、配列は育ちません。配列に自動的に拡張 SetAtGrow 場合は、を使用します。
自分のインデックス値が配列の有効な位置を表すようにする必要があります。これが範囲外の場合、assert ライブラリのデバッグ バージョン。
次の表は CObArray::SetAtに似ている他のメンバー関数を示します。
Class |
メンバー関数 |
---|---|
void SetAt( INT_PTRnIndex, BYTE newElement) ; |
|
void SetAt( INT_PTRnIndex, DWORD newElement) ; |
|
void SetAt( INT_PTRnIndex, void* newElement) ; |
|
void SetAt( INT_PTRnIndex, LPCTSTR newElement) ; |
|
void SetAt( INT_PTRnIndex, UINT newElement) ; |
|
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