Well, even though C++ doesn’t have a native garbage collector, the engine does. And it’s supposed to deal will all instances that aren’t used anymore.
I’ve come across a statement that every pointer declared in .h should be marked as UPROPERTY() for the engine garbage collector to properly dispose of them. But I’ve also seen statements that this is not necessary.
So if someone could clarify it, I’d be happy to know more, too.