字节指针和字节管理指针的区别

Difference between byte pointer and byte managed pointer

有什么区别
BYTE* p;

BYTE^ p;

如果有什么不同,这个声明在 c++cli 中有什么不同吗?

提前致谢

BYTE^ p 将为您提供单个装箱字节的托管句柄​​。你不能用它做很多事情(你可以阅读它,我不确定你甚至可以在 C++/CLI 中编写它;你当然不能在 C# 中),并且直接在它的未装箱形式。

另一方面,

BYTE* p 是指向字节的经典指针,它可以是数组的第一个(甚至是数组中的任何字节)。

pin_ptr可以从前者给你后者。