B bugcool Unregistered / Unconfirmed GUEST, unregistred user! 2003-04-02 #1 如题,有人说全局变量是最不好的编程习惯之一,有什么好的办法消灭它? 还有,如果不用全局变量,怎么保存程序中的状态变量那?
H HHSH Unregistered / Unconfirmed GUEST, unregistred user! 2003-04-02 #3 不用全局变量,用个全局对象(自定义类)比较好。 安全性、可靠性都高,最后也好释放掉。
阿 阿西喊佛 Unregistered / Unconfirmed GUEST, unregistred user! 2003-04-02 #4 不是不好的习惯,是逼不得已才用全局变量 要消灭它可以请米国鬼子用飞毛腿轰了它,哈哈。
B bugcool Unregistered / Unconfirmed GUEST, unregistred user! 2003-04-02 #6 我的做法是将全局变量做成一个类, 然后通过读写INI文件来保存变量, 当需要的时候就创建对象,读对象 属性来获得变量值,用完了就释放 对象。我感觉这样是消灭了全局变量, 但是这样频繁地创建、释放对象好么?, 玩
我的做法是将全局变量做成一个类, 然后通过读写INI文件来保存变量, 当需要的时候就创建对象,读对象 属性来获得变量值,用完了就释放 对象。我感觉这样是消灭了全局变量, 但是这样频繁地创建、释放对象好么?, 玩
W wr960204 Unregistered / Unconfirmed GUEST, unregistred user! 2003-04-02 #8 全局变量未必就是不好的习惯。 不会武功耍大刀砍伤自己也是可能的。 如果杜绝全局变量,呵呵,你就没法写程序了。 Applicatiion是全局变量,Screen是全局变量。 你的窗体文件也要为该窗体声明一个全局的窗体类变量。 呵呵
全局变量未必就是不好的习惯。 不会武功耍大刀砍伤自己也是可能的。 如果杜绝全局变量,呵呵,你就没法写程序了。 Applicatiion是全局变量,Screen是全局变量。 你的窗体文件也要为该窗体声明一个全局的窗体类变量。 呵呵
T tan_jian Unregistered / Unconfirmed GUEST, unregistred user! 2003-04-02 #11 大的来说系统要有N多模块构成,小的说来一个Application由众多unit构成,除非 彼此间不交互要,那还叫程序?全局变量封装在类或者一个单元里,只能说尽量减少 全局变量的个数,用的过多这是不好的编程习惯,不过有时候似乎经不住编程带来的 方便的诱惑!
大的来说系统要有N多模块构成,小的说来一个Application由众多unit构成,除非 彼此间不交互要,那还叫程序?全局变量封装在类或者一个单元里,只能说尽量减少 全局变量的个数,用的过多这是不好的编程习惯,不过有时候似乎经不住编程带来的 方便的诱惑!
B blue_morning Unregistered / Unconfirmed GUEST, unregistred user! 2003-04-02 #12 使用全局对象而不是全局变量。 让全局变量成为全局对象的属性。 这需要你在设计和面向对象上有更多的理解。 To:wr960204 ->Applicatiion是全局变量,Screen是全局变量。 应当是全局对象才对吧。
使用全局对象而不是全局变量。 让全局变量成为全局对象的属性。 这需要你在设计和面向对象上有更多的理解。 To:wr960204 ->Applicatiion是全局变量,Screen是全局变量。 应当是全局对象才对吧。
W wr960204 Unregistered / Unconfirmed GUEST, unregistred user! 2003-04-02 #13 To blue_morning Application其实是一个类的变量,它指向内存中的对象。 类就是数据类型,对象就是变量。
春 春意 Unregistered / Unconfirmed GUEST, unregistred user! 2003-04-02 #15 在Private中定义!!!!在每次调用时在前面加上类名!!(不过挺累的)
L lynu Unregistered / Unconfirmed GUEST, unregistred user! 2003-04-02 #16 别的语言还好一点,象c/c++还可以用static 但pascal就免了,你看delphi vcl源码,定义有大量的全局变量,甚至用一个单元来 做这种事情.
张 张无忌 Unregistered / Unconfirmed GUEST, unregistred user! 2003-04-02 #17 最好把所有的全局变量放到一个单元里,也可以用全局类类代替
X xf-wangyi Unregistered / Unconfirmed GUEST, unregistred user! 2003-04-03 #19 做一个全局的类吧 所有的全局变量都写成这个类的属性 和私有变量 用Get和Set方法来封装访问
C caffen Unregistered / Unconfirmed GUEST, unregistred user! 2003-04-03 #20 有必要吗???用的滥(烂)当然不是好事,关键在于用的人 我想全局变量还比goto要好吧,但是goto在C#中还保留着用呢?? 你想想[?]