用C语言编程时,通常要建立一些用户函数。如果这些函数具有通用性,一般的方法是将它们作成头文件,当需要时用“#include”命令将其包含到源程序之中,以提高编程效率。但在特定的程序中一般仅使用这些函数的一部分,若用上述方法包含所有函数,无疑会使源程序变得庞大而难于理解,并会影响编译和执行效率。建立用户目标模块库可以解决这个问题,当把一个程序与一个库连接时,连接程序将扫描该库并自动选择当前程序所需的模块。
TurboC2.0提供的TLIB.EXE是管理目标模块库的实用程序。用户建立自己的目标模块库,需要以下几个步骤:
1.编写C语言源程序。源程序中不要定义main函数,而只包含其它若干个函数的定义。为了叙述方便假设源文件名为ABC.C。
2.编译源程序。注意,只进行编译,不要连接。若源程序有错误,经修改之后再编译,直到最后通过为止。这时系统就在指定的目录中建立了与源文件相对应的目标文件:ABC.OBJ。
3.建立用户目标模块库。在DOS提示符下直接运行TLIB,TLIB命令行的一般格式如下:
TLIBlibname[/C][/E][commands][,listfile]
libname:要建立的用户目标模块库,缺省的扩展名为.LIB
/C:大小写敏感标志。该选项不常用。
/E:建立扩展字典。建立扩展字典可以加速大的库文件的连接过程。
commands:操作列表,由若干个动作符以及每个动作符后面的文件名或模块名组成。TILB支持的动作符有5种:“+"、“-"、“*"、“-*"或“*-"、“-+"或“+-"。“+"是把指定的文件加到指定的库中;“-"从库中删除指定的模块;“*"将相应的模块从库中抽取并写到指定的文件中,原库不变;“-*"或“*-"是将库中指定的模块拷贝到指定的文件中,然后把该模块从库中删除;“-+"或“+-"是将指定的模块用指定的文件或模块代替。
Listfile:建立列表文件。列表文件按字母顺序将库中各模块列表,为文本文件,可用DOS的TYPE命令查看。例如,用目标文件ABC.OBJ建立用户目标模块库ABC.LIB,并获取列表文件ABC.LST,命令行如下:
TLIBABC.LIB+ABC.OBJ,ABC.LIB
如果用户又编写了新的函数,通过编译之后同样可利用上述方法将其加到用户目标模块库ABC.LIB之中,命令为:
TILBABC.LIB/E+A.OBJ+B.OBJ+C.OBJ
在上面的命令中,假设A.OBJ、B.OBJ、C.OBJ是用户函数模块。命令中的/E参数表示建立扩展字典。
如果要用ABC1.OBJ模块代替ABC.LIB中的ABC.OBJ模块,并在屏幕上显示经替换后的ABC.LIB库中的模块列表,可这样实现:TLIBABC.LIB-ABC.OBJ+ABC1.OBJ,CON(CON为DOS的设备文件名,在这个命令中表示显示器)。
在Navigator,似乎更容易将目标模块(ObjectModel)视为Javascript的一大功能。它的句法是Javascript,而各 种Objects的集合看上去、使用起来都象是ArrayObjects(队列对象)。对大多数人来说,一个页面的ObjectModel和Javascript没有本质的区别。
微软推出了IE4.0。笔者本人就十分倾向使用这种浏览器,IE4.0的DOM是多数人选择IE浏览器的其中一个原因。
IE4.0将ObjectModel从语言中分离出来,并将之纳入到浏览器里。它不是说具有一种语言,能将不同目标对象放到一个页面上,而是具有这种浏览器,能够提供页面的结构和显示,并将这类信息通过程序语言或编纂组件以便于阅读和管理。你没有必要指定div标签在Javascript的位置,只需弄清楚它在VBScript中位置有什么不同。
总之,利用Javascript管理HTML就跟利用VBScript进行管理一样简易,同样,跟利用Javaapplet,、利用ActiveX管理、利用Cobol一样简易。
同时,这种目标模块并不仅仅处理定位、图象、嵌入标签方面的问题,它还可以管理整个网页结构。因此,如果你想知道一个页面上有多少个标签,或者想将第五段落变成蓝色,或者想修改网页元素的CSS-P值,你只需如法炮制,管理控制这些Objects,你使用的语言就能达到你的目的。