打印本文 打印本文 关闭窗口 关闭窗口
Delphi 程序员代码编写标准指南 (二)
作者:武汉SEO闵涛  文章来源:敏韬网  点击数1937  更新时间:2009/4/23 18:44:16  文章录入:mintao  责任编辑:mintao
会让编译器更加有效率的产生有关这些不改变的参数的代码。

 

而例程中另外一些非变参数也可常量来传送。尽管这样做没有产生任何效果和提高效率,这将会给调用例程的使用者提供更多的信息。

 

3.3.2.5 名称的冲突

 

当使用拥有两个名称相同的例程的两个单元时,如果你调用该例程时,在uses子句中排在后面的单元中的例程将会被调用。为了解决这种“在uses子句上的模糊”冲突,要在调用该例程时写上相关的单元的前缀,例如:

        sysUtile.FindClose(SR);

        windows.FindClose(Handle);

 

3.4 变量

 

3.4.1 变量的命名和格式

 

变量的命名应以使用它们的目的相符

 

循环控制变量应采用一个单独的字符作为名字,比如 I,J,或K,也可以采用更加有意义的名字,比如 UserIndex。

 

逻辑变量的名字应能充分表达准确的真或假的意思。

 

3.4.2 局部变量

 

一个过程中的局部变量应遵循所有其它变量的使用和命名约定。临时变量的取名应合理。

 

如果必须的话,在一进入例程就应初始化局部变量。局部的AnsiString变量会自动初始化为一个空的字符串。

局部接口和派分接口类型变量将会自动初始化为nil,并且局部变数和ole变数类型变量会自动初始化为Unassigned

 

3.4.3 全局变量的使用

 

使用全局变量是不推荐的。但是,在某些时候还是必须使用,而且它们也只应在必须使用的时候才使用。在这种时候,你应努力只在一段上下文范围内使用全局变量。例如,一个全局变量只应在一个单元的implemntation部分内是全局的。如果打算在多个单元类使用全局数据,你应将它们移到一个公共的单元中然后被其它所有单元使用。

 

全局变量可以在var子句中直接初始化为一个值。记住,所有的全局数据会自动初始化为0,因此不要将全局变量初始化为一个“空”值比如 0、nil、’’、Unassigned、等等。这样做的一个理由是因为零-初始化的全局数据在exe文件中不会占据任何空间。零-初始化数据被存储在一个虚拟的数据段,它在应用程序启动后被分配在一段内存中。非零-初始化的全局数据在硬盘的exe文件占用空间。

 

 

上一页  [1] [2] 

打印本文 打印本文 关闭窗口 关闭窗口