今天在用UE4 开发时,C++引用了Niagara插件,编译报错,想了很多办法,都没能解决问题,最后还是请教大牛,帮忙给解决了,再次感谢大牛^_^
这里分享下经验,供大家参考:
编译报错如下图所示:
首先,澄清下,我在build.cs文件中,加入了Niagara插件和module的引用
自我感觉我的引用方式是没问题的,所以一直没有找到报错原因。
闲话不多说了,下面说问题出现原因及解决方式:
首先看下我的使用方式(罪魁祸首):
我在头文件中,引入了NiagaraComponent的头文件,并定义了一个成员变量。这就导致了c++编译器的强关联编译,不知道为什么UE4就找不到引擎本身插件中的文件,猜测是因为临时文件目录不在include中,所以不会自动查找,其实还是建议ue引擎做的更智能一些,把Intermediate目录加入到头文件引用目录列表中去。
解决方式如下:
去掉头文件引用,在定义成员变量的地方,加上前缀class,改为在头文件中声明要用到的类,然后在源文件中引用对应头文件
好了,今天的分享就到这里,希望大家不要入同样的坑!!!