This is really a two-part issue, but I’m more-so focused on the “why” versus the end result at this point.
Originally what I was trying to do is modify Node.h to change the owner_ from a Connection* to a WeakPtr to make it follow the standards presented throughout Urho3D. This will also prevent issues from attempting to use the Connection retrieved from GetOwner() when someone disconnects (Unless I’m mistaken here?).
When I made the appropriate changes, I can no longer compile. Instead I get the following errors:
error C2027: use of undefined type 'Urho3D::Connection'
error C2227: left of '->RefCountPtr' must point to class/struct/union/generic type
I’ve spent roughly 2 hours checking similar headers and making sure I’m not making any mistakes, but I can’t seem to figure out what I’m doing wrong here. Other headers similarly forward-declare class names and successfully wrap them with a WeakPtr, so why am I having this problem?