当编程到一定境界就会发现,人生就是一棵二叉树上从root到其中一个leaf的一条线段,只是有的长一些,有的短一些。 每个人,从生下来就一直在做0和1的选择,不停地做,直至生命终结。每一个细小的选择,都会影响后面的选择机会,比如说上学时你选择荒废,那么很多好的教育或者好的工作,都会直接对你说不,也就是0;同时,你的选择也会影响其他人的选择,比如说,你顺手从楼上扔下一张纸,把小明砸... Read More
返回目录 ExportedType元数据和声明 ExportedType元数据表包括了关于声明在程序集的非主要模块的公有类(在程序集外部可见)的信息。只有主模块的清单可以携带这个表。 之所以需要这个表是因为加载器希望一个程序集的主模块保存关于所有由程序集导出的类的信息。这些类——定义在主模块和ExportedType表中——的联合,给出了加载器一个完整的画面。 另... Read More
返回目录 File元数据表和声明 File元数据表描述了在当前模块宗引用到的同一个程序集的其它文件。在单模块程序集中,这个表是空的(除非你想要详细指明非托管DLL作为你的部属的一部分,正如在本章前面所描述的)。这个表有如下的列结构: Flags(4字节宽位域):描述文件特征的二进制标记。为了将来使用,这个入口总是保留的,当前定义的唯一标记是ContainNoMetaData(0... Read More
返回目录 AssemblyRef元数据表和声明 AssemblyRef(程序集引用)元数据表定义了一个程序集或模块的外部的依赖。主模块和非主要的模块可以——而且通常确实可以——包括这个表。唯一的一个不依赖于其它任何程序集的程序集,并因此而只有一个空的AssemblyRef表,是Mscorlib.dll,.NET Framework类库的根程序集。 AssemblyRef表的列结... Read More