次の方法で共有


CObArray::SetAt

指定したインデックスの配列要素を設定します。

void SetAt(
   INT_PTR nIndex,
   CObject* newElement 
);

パラメーター

  • nIndex
    0 にゼロ以上で GetUpperBoundによって返される値により小さいか等しいの整数のインデックス。

  • newElement
    この配列に挿入するオブジェクトのポインター。null の値が許可されます。

解説

SetAt により、配列は育ちません。配列に自動的に拡張 SetAtGrow 場合は、を使用します。

自分のインデックス値が配列の有効な位置を表すようにする必要があります。これが範囲外の場合、assert ライブラリのデバッグ バージョン。

次の表は CObArray::SetAtに似ている他のメンバー関数を示します。

Class

メンバー関数

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 [ ]