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)托管数据的内部元素
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)托管数据的内部元素
相关文章推荐
- Visual C++ 2005 系列课程学习笔记-8
- Visual C++ 2005 系列课程学习笔记-9
- Visual C++ 2005 系列课程学习笔记-1
- Visual C++ 2005 系列课程学习笔记-2
- Visual C++ 2005 系列课程学习笔记-3
- Visual C++ 2005 系列课程学习笔记-4
- Visual C++ 2005 系列课程学习笔记-5
- Visual C++ 2005 系列课程学习笔记-7
- sql server 2005下载|学习|教程|笔记系列文章
- Andrew NG机器学习课程笔记系列之——机器学习之神经网络模型-下(Neural Networks: Representation)
- NodeJS学习系列课程笔记(NodeJs 快速上手+用法示例)
- NodeJS学习系列课程笔记(NodeJs REPL相关使用方法)
- AI角 | 把吴恩达深度学习系列课程画出来,这有份诚意满满的笔记求查收
- SQL Server 2005盛宴系列之一:SQL Server 2005产品简介-----学习笔记
- 【学习】构建WCF面向服务的应用程序系列课程笔记:(1) WCF概要
- 1自定义View系列课程学习笔记——之手势处理
- SQL Server 2005 学习笔记系列文章导航
- NodeJS学习系列课程笔记(NodeJs Stream 的相关使用方法)
- NodeJS学习系列课程笔记(NodeJs EventEmitter相关使用方法)
- 3自定义View系列课程学习笔记——之Measure测量