在delphi中create一个类是否一定要free?比如A=TA.create();是否一定要调用A.free()?如果TA类中有一些变量申请了空间比如有一个域使用NEW申请了一段空间是否需要在重写free,并在free中使用dispose释放?一个函数返回一个类,比如function returnA():TA,使用语句A=returnA,这个A是否需要释放?如果返回的对象中含有一个域,该域用NEW申请了空间,是否也要一并释放?同时几个申请内存的函数也让人搞不懂,请帮忙解释一下。谢谢。
调试欢乐多
2、非对象类型指针(如记录指针),要用New和Dispose;
3、函数返回值,如果是对象类型和指针类型,则必须按照上述方法在需要时手动释放;如果是其它类型则Delphi会自动释放。
另外,在使用TList时也要注意,TList不会在销毁时自动释放曾加入到列表中的指针,必须手动释放。