I've been passing an GUIDManager around in my project to where ever it's been needed, this was causing some problems. I was wondering if making the whole class static would cause any issues? Before I start correcting all reference to this class, I want to make sure that I won't come into some issue in the future.
namespace Pro{
typedef unsigned int GUID;
class GUIDLookup{
static unsigned int allocatedBitCount;
static std::unordered_map<std::string, GUID> nameMapping;
static std::stack<unsigned int> releasedGUIDs;
static GUID newGUID();
public:
static GUID newGUID(const std::string& name);
static void releaseGUID(const std::string& name);
static void releaseGUID(GUID);
static GUID getGUIDFromName(const std::string& name);
static std::string getName(GUID _id);
};
}