Compartir a través de


Cómo: Anclar punteros y matrices

Anclar un sub- objeto definido en un objeto administrado tiene el efecto de anclaje el objeto completo. Por ejemplo, si algún elemento de una matriz se ancla, después la matriz entera también se ancla. No hay extensiones al lenguaje para declarar una matriz anclar. Anclar una matriz, declara un puntero anclado a su tipo de elemento, y anclar uno de sus elementos.

Ejemplo

Código

// pin_ptr_array.cpp
// compile with: /clr
#include <stdio.h>
using namespace System;

int main() {
   array<Byte>^ arr = gcnew array<Byte>(4);
   arr[0] = 'C';
   arr[1] = '+';
   arr[2] = '+';
   arr[3] = '\0';
   pin_ptr<Byte> p = &arr[1];   // entire array is now pinned
   unsigned char * cp = p;

   printf_s("%s\n", cp); // bytes pointed at by cp
                         // will not move during call
}

Resultados

++

Vea también

Referencia

pin_ptr (C++/CLI)