extern对于全局变量声明的理解:
当在A.cpp中创建一个全局变量x,并在A.h中使用extern声明该变量,然后在B.cpp中包含A.h并使用abc,实际上是在告诉编译器这个变量x是在其他地方定义的。这意味着在B.cpp中使用的abc是同一个全局变量,而不是新的变量。
当编译器处理B.cpp时,它会知道x是在其他地方定义的,并会在链接阶段将A.cpp中定义的x与B.cpp中的引用连接起来。这样,实际上只有一个全局变量abc存在,它被A.cpp定义,但可以在B.cpp中访问和使用。
因此,extern关键字的作用是告诉编译器某个变量是在其他地方定义的,而不是在当前文件中定义的。这样可以在不同的文件中共享同一个全局变量。
CWnd*m_pMainWnd的理解:
CWnd* m_pMainWnd是MFC(Microsoft Foundation Class)中的一个指针变量,通常用来指向程序的主窗口(Main Window)。是在基于MFC的程序中常见的一种变量类型。
m_pMainWnd的作用是用来管理程序的主窗口,包括处理主窗口的消息、事件和操作。它通常在程序初始化时被赋值为主窗口的指针,然后在程序运行过程中被用来操作主窗口的各种属性和行为。
总的来说,m_pMainWnd在程序中的作用是处理和管理MFC界面,它可以用来操作主窗口的各种属性和方法,处理主窗口的消息和事件,以及管理主窗口的显示和行为。因此,可以说它在程序中起着非常重要的作用。
在MFC项目中实现某变量的改变影响界面的显示:
在主.cpp中创建theApp,在主.h声明theApp:extern 类名 theApp,这样在其他地方包含主.h的时候就能保证theApp的一致性。在对应改变的时候调用((主界面*)(theApp.m_pMainWnd))->...
就可以改变界面了