欢迎来到天天文库
浏览记录
ID:11464970
大小:1.18 MB
页数:20页
时间:2018-07-12
《delphi开发代码规范(修改)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、一、源程序书写规范1.1.通用源代码格式规则1).缩进缩进就是每级间有两个空格。不要在源代码中放置制表符。通过使用Tools
2、Environment菜单,在EnvironmentOptions对话框的General页上,不要选中UseTabCharacter和OptionalFill复选框,这样,制表符就不会被保存。2).边距边距设置为80个字符。只要可能,长度超过一行的语句应当用逗号或运算符换行。换行后,应缩进两个字符。代码行上字符串的长度不要超过255个字符,如果超过换行缩短,否则出现编译错误。3).begin...e
3、nd语句begin语句必须单独占一行。例如:fori:=0to10dobegin//错,begin与for在同一行fori:=0to10do//对,begin在另外一行中begin本规则的一个特殊情况是,当begin为else语句的一部分时,例如:ifsomestatement=thenbegin ...endelsebegin SomeOtherStatement;end;注意:end语句总单独一行。当begin不为else语句的一部分时,相应的end语句与begin语句的缩进量相同。1.2.ObjectPascal语句
4、格式语句书写规范与用法1).括号20在左括号与下一字符之间没有空格。同样,右括号与前一字符也没有空格。下面的例子演示了正确与不正确的空格。CallProc(Aparameter);//错!CallProc(Aparameter);//正确! 不要在语句中包含多余的括号。在源代码中,括号只有在确实需要时才使用。下面的例子演示了正确与不正确用法:if(I=42)then//错,括号是多余的if(I=42)or(J=42)then//正确,必须使用括号2).保留字和关键字 ObjectPascal语言的保留字和关键字总是完全的小
5、写。3).过程和函数(1).格式 过程名应当以大写字母开始,且大小写交错以增加可读性。例如procedureThisIsMuchMoreReadableRoutineName;(2).形参1、格式只要可能,同一类型的形参应当归并在一起:procedureFoo(Param1,Param2,Param3:Imteger;Param4:string);2、参数顺序 形参的顺序主要考虑寄存器调用规则。最常用的参数应当作为第一个参数,按使用频率依次从左到右排。输入参数位于输出参数之前。范围大的参数应当放在范围小的参数之前。例如:S
6、omeProc(aPlanet,aContinent,aCountry,aState,aCity). 有些则例外。例如,在事件处理过程中,TObject类型的Sender参数往往是第一个要传递的参数。(3).常量参数 要使记录、数组、短字符串或接口类型的参数不能被过程修改,就应当把形参标以Const。4).变量(1).局部变量局部变量用于过程内部,如果需要的话,应当在过程的入口处立即初始化变量。局部的AnsiString20类型的变量自动被初始化为空字符串,局部的接口和dispinterface类型的变量自动被初始化为ni
7、l,局部的Variant和OleVariant类型的变量自动被初始化为Unassigned。(2).全局变量 一般不鼓励使用全局变量。应当把全局变量限制在需要的环境中。例如,一个全局变量可能只在单元的实现部分是全局的。 全局数据如果将由许多单元使用,就应移动到一个公用单元里被所有对象使用。全局数据可在声明时直接初始化为一个值。注意,所有全局变量自动进行零初始化,因此,不要将全局变量初始化为诸如0、nil、或Unassigned等空值。零初始化的全局变量在.EXE文件中不占空间。零初始化的数据保存在虚拟的数据段中,而虚拟数据
8、段只在应用程序启动时才分配内存。5).类型(1).大小写规则 类型标识符是保留字,应当全部小写。Win32API类型常常全部大写,并且遵循诸如Windows.pas或其他API单元中关于特定类型名的规则。对于其他变量名,第一个字母应大写,其他字母则大小写交错。下面是一些例子:var MyString:string;//保留字 WindowsHandle:HWND;//Win32API类型 I:Integer;//在System单元中引入的类型标识(2).浮点型 不鼓励使用Real类型,因为它只是为了与老的Pascal代码兼
9、容而保留的。通常情况下,对于浮点数应当使用Double。(3).Variant和OleVariant 一般不建议使用Variant和OleVariant。但是,当数据类型只有在运行期才知道时(常常是在COM和数据库应用的程序中),这两个类型对编程就有必要。当进行诸如自动化ActiveX控件的COM编程时
此文档下载收益归作者所有