dispose、free、freemem有什么区别,各自在什么情况下使用?

解决方案 »

  1.   

    Dispose 函数 释放动态变量所占的空间
    FreeMem 函数 按给定大小释放动态变量所占的空间
      

  2.   

    请问draking,如果用dispose来释放getmem(),这样好吗?
      

  3.   

    而Free方法,它不是虚方法,它是为了那些搞不清对象是否为空(nil)的情况下能安全释放对象而专门提供的。其实,搞不清对象是否为空,本身就有程序逻辑不清晰的问题。不过,任何人都不是完美的,都可能犯错,使用Free能避免偶然的错误也是件好事。然而,编写正确的程序不能一味依靠这样的解决方法,还是应该以保证程序的逻辑正确性为编程的第一目标
      

  4.   

    用GetMem申请的内存用FreeMem来释放。
    用New申请的内存用Dispose来释放。Free一般是类的释放方法。如果类已经释放调用Destroy方法释放,没有已经释放了就直接返回。