Cannot instantiate abstract class

Error 1 error C2259: ‘FSerializableValueObject’ : cannot instantiate abstract class d:\unreal engine\unreal engine\4.4\engine\source\runtime\core\public\Containers\ContainerAllocationPolicies.h 23

What I have done is a USTRUCT with an abstract method
virtual void Populate() = 0

And have extended this into 2 USTRUCTs that have that method and its implementation. Even if this is so, it still pesters me about instantiating it, which I am not :frowning:

Any idea why its saying this?


USTRUCTs cannot be abstract as they need to be instantiated (and initialized) as part of the serialization process. The code for this is generated by UHT, which is why you are seeing this issue even though you have not instantiated the struct yourself.