您的位置:首页 > 编程语言 > C语言/C++

Visual C++ 2005 系列课程学习笔记-6

2008-09-04 03:30 288 查看
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)托管数据的内部元素
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: