delphi释放动态控件的问题与解决方法.docxVIP

  • 14
  • 0
  • 约1.41千字
  • 约 2页
  • 2021-11-08 发布于江苏
  • 举报

delphi释放动态控件的问题与解决方法.docx

关于 delphi Assigned 1.根据 Delphi 指令参考手册中说明: Assigned 函式在参数不为nil 时传回True,表示指针已经指到某个内存地址,这个内存地址可能是一个对象地首地址,也可能在函数或过程中,声明一个指针变量,没有赋值为 nil , 无乱的指向某处,这两个种情况,Assigned(指针变量)都不为 nil , 函数放回True; 而参数为nil 时则传回False。 Assigned 并不是一个真正的函数。技巧: 用呼叫 Assigned 的方式来取代直接把参数拿来和nil 比较,效率会更好。2.这个问题要从内存方面来解释 当你建构一个物件 SomeComponet.Create(Owner); 系统会有一个指针指向这个对象 当你解构一个物件 SomeComponet.Free; 系统会将指针指到的东西杀掉,但是指标还是指在相同的位置请注意计算机的资源是有限的, 所以可能下一步你的程序要跟系统要资源, 刚才的指针位置,就出现了其它的数据 If Assigned(SomeComponet) then SomeComponet := nil; 先检查这个对象有没有在其它地方被设成 nil, 然后再将它设成 nil 。 当我们无法预测使用者会如何操爆他的计算机, 程序员必须留意内存的管理。 小弟浅见... 3 function Assigned(var

文档评论(0)

1亿VIP精品文档

相关文档