UE4 -- C++ 创建UInterface接口

今天看到到UE4的接口,创建蓝图接口很容易,只要能明白几个英文单词就好了;

但是,如果要直接使用传统C++的方式声明一个接口会很坑,首先怎样直接用C++声明和定义一个接口在https://wiki.unrealengine.com/Talk:Interfaces_in_C%2B%2B里已经详细说明了,但是有一点很重要的没有说明, XXXX.generated.h这个文件哪里来的?我一开始也是因为这个XXXX.generated.h文件来源纠结了很久,在网上查了很多资料,最后在https://answers.unrealengine.com/questions/239014/how-to-create-a-uinterface.html这里面找到了答案。原来当你在VS这样定义好一个接口之后,先不管VS里显示的错误,直接Build,如果没有出错,XXXX.generated.h文件就自动给你生成了,查看编译过程,会运行一个UnrealHeaderTool,UE4的头文件生成工具,即生成上面需要的XXXX.generated.h。接下来你就可以随意在这个接口做你的事情了!

最后还要说一下的就是在UE4的编辑器里居然不能删除C++类,你选中一个C++文件,右键是没有删除选项的,所以要删除一个类需要直接去删除文件,同时你要清空一下项目中的\Binaries路径里的所有文件,再重新打开UE4才真正的删除一个类,如果你仅仅删除C++文件,没有清空之前Build的二进制文件,在UE4的编辑器的内容浏览器里还是能看到你已经删除了源文件的C++类!当然如果你不介意你的内容浏览器里堆满你已经删除源文件的类的话,可以忽略!

你可能感兴趣的:(C++,UE,UInterface)