IMPLEMENT_CLASS macro is mentioned once in documentation but appears bitrotten

This page says “All gameplay classes must be passed to the IMPLEMENT_CLASS macro in order to be implemented properly. This is done in the class source file, which is a C++ (.cpp) file that implements the class and all of its functions…”

But IMLEMENT_CLASS appears nowhere else in the documentation, nor is it used in any of the example code or starter code I searched. Specifically, I looked in the “Basic Code” template from version 4.1.0 and the “Shooter Game” example, for the same version. It’s defined in ObjectBase.h but not used anywhere.

It seems that the documentation is outdated as far as IMPLEMENT_CLASS is concerned. Looking at the latest code (CodeGenerator.cpp, around line 971) we can see that this macro is now automatically inserted into the generated inline file (i.e. YourModule.generated.inl), which you include in one of your module’s .cpp files, usually YourModule.cpp.

It is therefore no longer necessary to add this macro yourself.

I will notify our Documentation team, thanks!

We’ll definitely get this fixed up. Thanks for pointing it out!