UE4 编译报错 “Error LNK2019 : 无法解析的外部符号” 一种可能的原因

报错如下:

Module.AssetPackerEditor.cpp.obj: Error LNK2019 : 无法解析的外部符号 "__declspec(dllimport) public: static double DetailedCookStatsExtern::CookBegin_A_TimeSec" (_imp?CookBegin_AssetPacker_GenPakConfig_TimeSec@DetailedCookStatsExtern@@2NA),函数 "public: void __cdecl UAssetPackerEditorManager::GeneratePakConfig(void)" (?GeneratePakConfig@UAssetPackerEditorManager@@QEAAXXZ) 中引用了该符号

原因:CookBegin_A_TimeSec 这个变量它是 class 中的 static double ,并且没有为它做初始化。在UE4中,需要始终为类静态成员做初始化。解决方法是在合适的地方添加上:

double DetailedCookStatsExtern::CookBegin_A_TimeSec = 0.0;

有的博客说C++ 类静态成员会有默认初始化(为0),但对于UE4来说不是合适的。还是需要做初始化。

C++静态成员变量的初始化_c++静态成员变量初始化-CSDN博客

相关推荐
tkokof17 天前
崩溃(Crash)简记
数据结构·c++·ue5·ue4·crash
清泓y1 个月前
UE5--浅析委托原理(Delegate)
c++·ue5·ue4
灵境引路人1 个月前
【虚幻引擎UE】UE4.23到UE5.5的核心功能变化
ue5·ue4·虚幻
爆米花煮鸡蛋1 个月前
UE4.27打包安卓报错
android·ue4
我命由我123451 个月前
游戏引擎 Unity - Unity 启动(下载 Unity Editor、生成 Unity Personal Edition 许可证)
c语言·c++·后端·unity·c#·游戏引擎·ue4
阿拉丁的梦2 个月前
用c++构建的actor导致整个ue5蓝图项目打不开。
ue4
青年夏日科技工作者2 个月前
UE5.3 虚幻引擎 安卓Android地图插件开发打包
android·ue4
Growthofnotes2 个月前
UE4_用户控件_3_用户控件输入数据的方法
ue4
Alexander yaphets2 个月前
UE4.27 Android环境下获取手机电量
android·ue4
小江村儿的文杰2 个月前
形象地理解UE4中的数据结构 TLinkedListBase
数据结构·ue4