当前位置: 代码迷 >> 综合 >> c++ 全局变量之: extern
  详细解决方案

c++ 全局变量之: extern

热度:52   发布时间:2024-01-30 12:53:01.0

网上的说法,五花八门,真不知道相信谁好了。

我自己的做法如下,经验证,好使。

 

一、做一个globvar.h

extern INeoMotion *iNeoMotion;

这里面,INeoMotion  是类名,iNeoMotion是指针。注意,这里只是相当于 声明了iNeoMotion。现在别的地方就可以使用iNeoMotion了,只要, 简单不,哈哈!

 

 

二、在mainwindow.cpp中,使用它。注意,没必要再去声明了,直接用!只要头文件包含了

mainwindow.cpp:

    iNeoMotion=new NeoSMC304();iNeoMotion->ReadParaData();

这里面还耍了个花火,INeoMotion 和NeoSMC304 都是类,但是NeoSMC304继承自INeoMotion。也就是我这里还搞了个多态。

 

三、在其他地方,我还能接着使用iNeoMotion变量。

例如,在中,只要头文件包含了#include "globvar.h"

dialogsetmotion.cpp:

iNeoMotion->ReadParaData();

 

 

四、概括起来,只要在globvar.h中extern声明一个变量,别的地方只要包含这个头文件,就直接使用这个变量了!

  相关解决方案