다음을 통해 공유


COleSafeArray::PutElement

단일 요소 배열에 할당합니다.

void PutElement(
   long* rgIndices,
   void* pvData 
);

매개 변수

  • rgIndices
    배열 인덱스 배열의 각 차원에 대 한 포인터입니다.

  • pvData
    배열에 할당 하는 데이터에 대 한 포인터입니다.VT_DISPATCH, VT_UNKNOWN, 및 VT_BSTR variant 형식 포인터 이며 다른 수준의 간접 참조는 필요 하지 않습니다.

설명

이 함수는 자동으로 Windows 함수 호출 SafeArrayLockSafeArrayUnlock 앞과 뒤의 요소를 지정 합니다.데이터 요소가 string, object 또는 variant 이면 함수는 제대로 복사 하 고 기존 요소의 문자열, 개체 또는 변형 된 경우 올바르게 해제.

참고 배열 다른 작업에 의해 잠겨 있는 동안 배열에 요소를 넣을 수 있도록 여러 잠금에 배열을 가질 수 있습니다.

함수에서 오류를 throw 한 CMemoryException 또는 COleException.

예제

VARIANT retVariantArray() 
{
   COleSafeArray saRet;         
   DWORD numElements[] = {10, 10}; // 10x10

   // Create the 2 dimensional safe-array of type VT_R8 with size 10x10
   saRet.Create(VT_R8, 2, numElements);

   // Initialize safearray  with values...
   long index[2];
   for(index[0] = 0; index[0] < 10; index[0]++)
   {
      for(index[1] = 0; index[1] < 10; index[1]++)
      {
         double val = index[0] + index[1]*10;
         //populate the safearray elements with double values
         saRet.PutElement(index, &val);
      }
   }
   // Return the safe-array encapsulated in a VARIANT...
   return saRet.Detach();
}

요구 사항

헤더: afxdisp.h

참고 항목

참조

COleSafeArray 클래스

계층 구조 차트

COleSafeArray::GetElement

SafeArrayPutElement