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

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

2008-09-04 03:31 295 查看
Visual C++ 2005内部机理之元数据

1、基于元数据的动态编程:反射、特性

(1)反射Reflection

动态地发现类型,操作类型,创建类型(查询元数据)

(2)特性Attributes

允许程序定义新的元数据,从而在运行时动态地感知环境(创建元数据)

2、元数据Metadata

(1)元数据是“数据的数据”,用于描述基于类型的数据;

(2)元数据是CLI组件合同的描述载体,组件平台的“粘合剂”;

(3)CLI元数据分类:

定义型元数据—描述代码中定义了什么

引用型元数据—描述代码中引用了什么

特性元数据—扩展定义新的元数据

ref class MyClass

{

public:

int data;

}

int main()

{

System::Console::WriteLine(MyClass::typeid); //利用反射来获取类型

}

定义型元数据:

包括ModuleDef、TypeDef、MethodDef、FieldDef、ParamDef、PropertyDef、EventDef等。

引用型元数据:

包括AssemblyRef、ModuleRef、TypeRef、MemberRef等。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: