Download

Is it acceptable to change a class's inheritance this way?

I know it’s a silly question, but I have a Lexicon class which originally inherited from UActorComponent, and I wanted to change to inherit from UMorpheme. I did this in the most straightforward way possible, by changing one line:



class PROJECT_API ULexicon : public UActorComponent
//becomes
class PROJECT_API ULexicon : public UMorpheme

This compiles cleanly, but I know the way unreal stores and accessions code in the back-end can be drastically different from what the UI shows us, so is it alright to do this? I’m getting some sporadic crashes that could well be innocent issues caused by the change in inheritance hierarchy, but if I’ve somehow fundamentally broken something, I’d rather know before I pour hours into chasing down the crashes.

As long as UMorpheme inherits from UActorComponent you should be fine.

Darn, I should’ve specified that- it does indeed! And thank you for clarifying- I know this sort of thing should be self-evident, but I know so little about how ue4 interfaces with C++ that I always feel like a blindfolded guy walking through a minefield. :slight_smile: