in reply to Questions about sharing code

In general, I prefer not to import or export anything. I find it confusing when I look at the code later, and I don't mind verbose function calls when they give me extra documentation about where things came from.

However, inheritance may not be the right choice for sharing OO code. Only use inheritance as a way to model behavior of an object, not as a way to simply share code. If you just need to share some code but the behaviors in it don't make sense as an inherent behavior of the object you want to use them from, rethink your object model and figure out what concepts are not being modeled. You may need a new class, which the other classes call or delegate to.

Sometimes I even resort to the dreaded "Foo::Util" class for things that don't fit nicely anywhere else. It's still better than using inheritance just for access to some methods.