Visual C++ 2005指针和对象模型
1、 CLI对象模型
(1)CLI对象模型是类型实例在虚拟机中的表示;
(2)CLI对象模型是深刻认识现代面向对象、面向组件编程语言的根本;
(3)掌握C++/CLI的关键是掌握托管CLI对象模型和本地C++对象模型。
2、追踪句柄
Point^ p = gcnew Point();
指向“托管堆上一个完整的对象”的指针。
3、内部指针(interior pointer)
Interior_ptr<int> pa = &a[0];
包含本地指针,是本地指针的超集,可以指向:
(1)引用句柄
(2)值类型或者装箱值类型句柄
(3)托管类型的内部成员
(4)托管数据的内部元素
4、固定指针(pinning pointer)
void native_function(int* p)
int main()
{
Point^ p = gcnew Point(); //由于垃圾回收器的自动回收而使p的地址不稳定
pin_ptr<int> px =&p->x;
native_function(px);
}
可以指向:
(1)引用句柄
(2)值类型或者装箱值类型句柄
(3)托管类型的内部成员
(4)托管数据的内部元素
我思故我在
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步