Share via


Nasıl yapılır: İşaretçiler ve Dizileri Sabitleme

Yönetilen nesnede tanımlanan bir alt nesneyi sabitlemenin, nesnenin tamamını sabitleme etkisi vardır. Örneğin, bir dizinin herhangi bir öğesi sabitlenmişse, dizinin tamamı da sabitlenir. Sabitlenmiş bir dizi bildirmek için dilin uzantısı yoktur. Bir diziyi sabitlemek için, sabitleme işaretçisini öğe türüne bildirin ve öğelerinden birini sabitleyin.

Örnek

Kod

// 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
}
++

Ayrıca bkz.

pin_ptr (C++/CLI)