提个问题:关于内存的! (50分)

  • 主题发起人 主题发起人 wiseinfo
  • 开始时间 开始时间
W

wiseinfo

Unregistered / Unconfirmed
GUEST, unregistred user!
大家用DELPHI的时候,一些自己定义函数很难记住, 有时候都忘记了有这么个函数在那个UNIT里面,我现在写程序时,所有的函数与过程都象.NET集中在一全局的对象里面
彼如.NET里面 SYSTEM.WINDOWS.
我的是HXSYS.HXMSSQL.SP_ISDATABASE
HXSYS.HXSTRING.SPSTRING()
不知道这样写是否会在内存占用或泄露方面有什么重大的问题??
当然有所有失,只要影响不大就行了!

 
呵呵,不用担心的——这只会让你的.pas文件大N个字节,编译生成的二进制代码不会有
变化的(不信的话,你可以将某几个函数的前缀去掉,再编译一下,看看Exe文件的大小会
不会变短? :) )。
 
我不怕EXE大,只怕对内存不好~~~
 
出现内存泄漏或占用太多一般是因为你创建的对象没能及时释放或对象本身太大造成的。
和定义函数没直接关写,除非你的函数中创建了对象,而你对你的对象没有管理好。
 
我的做法是用一个用一个自定义的GlobalDefineUnit单元保存所有的常量,自己定义的类型,用一个命名为GlobalVarUnit保存所有全局变量,习惯以G打头命名变量,所有公共的函数和过程,并不把他们写成类,只是当作资源来用。用的时候只要在Uses中加入这两个单元就可以了,类似于C中的#Include,不会造成内存的泄漏。
 
后退
顶部