以前写程序没有太注意全局变量的问题,都说好的程序不应该使用全局变量,所以最近我想是应该好好限制一下全局变量的使用,特来MSDN向大家取经,望大家能够传授点经验,我写的是MFC的程序,对于全局变量有以下几个问题想请教一下大家:1、在写程序时应该如何有避免使用全局变量 (如:类与类之间,线程与线程之间)2、MFC中在C*App和CMainFrame中定义的变量都可以在任何类中调用,那它们之间有没有什么区别呢,如果使用全局变量的话
在哪一个类中定义更好呢?3、现在有这样一种情况,我插入一个对话框,关联了一个类CMyDialog。如果想创建并显示此对话框,我需要创建一个
CMyDialog的对象m_mydialog。
我想在任何一个类中都可以对mydialog操作,我的做法是把mydialog在MainFrame中定义,但这是否已经成为了全局变量,
这种情况应该如何不使用全局变量来实现?就这些,希望了解朋友说说自己的经验,最好能够针对我的问题做个清晰的阐述,在此亿分谢谢。
在哪一个类中定义更好呢?3、现在有这样一种情况,我插入一个对话框,关联了一个类CMyDialog。如果想创建并显示此对话框,我需要创建一个
CMyDialog的对象m_mydialog。
我想在任何一个类中都可以对mydialog操作,我的做法是把mydialog在MainFrame中定义,但这是否已经成为了全局变量,
这种情况应该如何不使用全局变量来实现?就这些,希望了解朋友说说自己的经验,最好能够针对我的问题做个清晰的阐述,在此亿分谢谢。
===========
这个不好说,自己把握吧,尽量做成类成员变量。2、MFC中在C*App和CMainFrame中定义的变量都可以在任何类中调用,那它们之间有没有什么区别呢,如果使用全局变量的话
在哪一个类中定义更好呢?
==========
这个类中定义的都不是全局变量,在C*App中能用的原因是有一个全局变量theApp,而CMainFrame框架类对象在程序执行期间总是存在的。3、现在有这样一种情况,我插入一个对话框,关联了一个类CMyDialog。如果想创建并显示此对话框,我需要创建一个
CMyDialog的对象m_mydialog。
我想在任何一个类中都可以对mydialog操作,我的做法是把mydialog在MainFrame中定义,但这是否已经成为了全局变量,
=======
和上面一样,这个并不是全局变量。
那对于C*App与MainFrame 在哪个当中定义 “全局变量” 更好点呢?
http://blog.csdn.net/qianlima888/archive/2010/12/26/6099352.aspx
===========
这个看需求。其实用成员变量都可以的。2、MFC中在C*App和CMainFrame中定义的变量都可以在任何类中调用,那它们之间有没有什么区别呢,如果使用全局变量的话
在哪一个类中定义更好呢?
==========
在C*App 本来就是程序类啊。3、现在有这样一种情况,我插入一个对话框,关联了一个类CMyDialog。如果想创建并显示此对话框,我需要创建一个
CMyDialog的对象m_mydialog。
我想在任何一个类中都可以对mydialog操作,我的做法是把mydialog在MainFrame中定义,但这是否已经成为了全局变量,
=======
不是全局变量