Omnetpp 4.3+INET 2.1部署NETA框架时静态成员重定义报错求助
解决Omnetpp 4.3 + INET 2.1下NETA框架的
hopCountSignal重定义报错 问题原因
你的NA_UDPBasicBurst类声明时使用了INET_API宏,这个宏是INET框架中用于控制DLL导入导出的标识。在Windows编译环境下,它会被展开为__declspec(dllimport)或__declspec(dllexport),导致头文件里的静态成员hopCountSignal被标记为需要DLL导入,但源文件中定义该成员时未添加对应属性,编译器检测到属性不匹配,因此抛出此告警。
解决方案
提供两种可行方案,可根据你的实际需求选择:
方案1:为源文件中的静态成员添加匹配属性
修改NA_UDPBasicBurst.cc中的静态成员定义行,补充INET_API:
INET_API simsignal_t NA_UDPBasicBurst::hopCountSignal = SIMSIGNAL_NULL;
方案2:移除类声明中的DLL导入导出宏(推荐,因你未配置DLL相关设置)
修改NA_UDPBasicBurst.h中的类声明,去掉INET_API:
class NA_UDPBasicBurst : public UDPBasicBurst {
内容的提问来源于stack exchange,提问作者Salah Ghalyon
相关产品推荐
相关产品推荐

