dllexport 静态成员出错的解决方法:即使使用了 dllexport,dll 中的静态成员也不能被外部直接访问

来源:

https://stackoverflow.com/questions/2479784/exporting-static-data-in-a-dll

即使使用了 dllexport,dll 中的静态成员也不能被外部直接访问,直接访问就会出错

如果你觉得你没有直接访问,但是你有一些 inline 的函数中访问了静态成员,然后这些 inline 的函数写在外部代码中,编译器对外部代码展开之后,外部代码里就会出现对 dll 中的静态成员的直接访问了

所以解决方法就是把 dll 中原本定义在类中的会被编译器识别为 inline 的函数改为在 cpp 中实现,避免 inline

你可能感兴趣的:(GameEngineDev,c++)