中易网

【delphi】调用自定义函数出现invalid pointer operation错误

答案:1  悬赏:40  
解决时间 2021-01-19 13:41
  • 提问者网友:活着好累
  • 2021-01-18 15:43
【delphi】调用自定义函数出现invalid pointer operation错误
最佳答案
  • 二级知识专家网友:迷人又混蛋
  • 2021-01-18 16:44
经本机代码测试,没有遇到类似的故障,估计跟 delphi 特定的版本有关。


但貌似代码中有处小 bug:


  SetLength(j,Form1.FileListBox1.Count-1);

上面的代码是设置了动态数组 j 的长度,但貌似不应该减1,FileListBox1.Count 获取的是文件的列表总数,从代码来看,不需要减1。(如果减1,在做循环判断时,会少了一次文件名对比,而且 Invalid Pointer opration 的错误,可能就是少一个元素导致的。)


从 RepeatNameJudge 的设计功用来看,代码写的太复杂,建议可以考虑 FileExits 函数。


此外,对于 windows 系统来说,字母大小写是不敏感的,Unit.pas 与 unit.pas 是一个文件,而从代码看:


if newname=Form1.FileListBox1.Items[i]

会导致 Unit.pas 与 unit.pas 没有重复:



我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息!
大家都在看
推荐信息