Delphi编程注意事项---摘录收藏
- 如果需要传递对象参数则放在函数参数里,这样就由调用者来创建和释放对象。
例:[允许] function SomeOne(list:PStrList):boolean;
当然,NewXXX之类的创建对象的函数除外。一直存在的全局对象也除外,这些全局对象将在初始化时创建,结束时释放。
类定义中如果重载了Destory必须在里面加上inherited,否则不会释放的。
- 使用对象(object)还是记录结构(record)。
在有关性能方面的服务程序中:
只产生单个实例或少于10个实例则允许使用对象。
否则一律使用记录结构。
在GUI方面都使用对象,但是不得超过五级继承。
纯数据信息必须使用记录结构。
- 错误、异常处理规则:
1.Test,Check,Is开头的函数并不抛出异常,只检验。
2.其他函数遇到错误或异常都要抛出异常,使用raise显式抛出,
并且在函数文档中注明抛出异常的种类,方便使用者处理。
3.如果需要屏蔽异常,则显式地写 try..except语句拦截。 - 创建和释放
在什么情况下使用free,什么情况下使用freeandnil。
1.free之后不再使用的函数局部变量要使用free。
2. 全局变量或者Free后继续使用的变量要使用FreeAndNil;
本作品采用 知识共享署名-相同方式共享 4.0 国际许可协议 进行许可。