代码审查小结

1 不要异地释放内存,释放内存请用FreeAndNil。

伪代码:

procedure TForm1.btn2Click(Sender: TObject);
var
  p: Pointer;
begin
  //FList存放了很多的同类型的指针
  p := FList[0];
  DoSomething(p); //我指的错误是不能在DoSomeThing中进行释放内存的行为,否则下面下面的FreeAndNil就会出错。

  FreeAndNil(P);
end;

2. try finally end; 申请内存的需要在try之外,这主要是防止申请内存失败,导致释放无效指针。

3. 无效代码(特别是是指Coder为了Debug方便定义的一些常量、特殊路径),为了更好的管理这些无效代码,最好用编译条件管理。

4.尽量减少硬编码,主要是减少笔误,方便维护,增强阅读性

5.存储路径请用函数,而不是自己随意填一个路径,因为有些目录,桌面程序是没有访问权限的.

6.Delphi特殊结构里面最好使用定长的数据类型,所以,请不要使用string,可以用字符数组或者PChar类型代替。

7.最小锁原则,在设计锁的时候,一定要想清楚这个问题,否则,后患无穷!

8 局部变量一定要初始化,因为这个工作你不做,变量就处于一个随机指向的状态,有时候就会出现一些莫名奇妙的问题。

9 申请的内存空间一定要初始化。FillChar,ZeroMemory。

10 不要吝啬空格、空行、begin end,这些可以增强代码的可阅读性。

11 多次使用的字符串、数字,强烈定义成常量,节省手工成本、维护成本、减少笔误造成的错误

12 使用Code Template定义一些常用的注释格式、字符串的输入,定制自己的Delphi。

13  使用To Do List进行逻辑分析、注释。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值