HOW TO:固定指標和陣列
固定為下標物件定義Managed物件中有固定整個物件的效果。 比方說,如果陣列中的任何項目經過 pin 處理之後,整個陣列已也固定。 沒有擴充來宣告固定的陣列的語言。 若要固定陣列宣告pin指標型別,它的項目,並釘選的一個元件。
範例
程式碼
// 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
}
Output
++