I have a nested unordered_map with different enums (std::unordered_map<EnumA, std::unordered_map<EnumB, int>>). Whenever I'm creating a variable of this type it leads to a multitude of errors, with a message: see reference to class template instantiation. I've tried adding the following before #include "enum.h" for EnumA and EnumB but that doesn't work:
#define BETTER_ENUMS_DEFAULT_CONSTRUCTOR(Enum) \
public: \
Enum() = default;
#include "enum.h"
Is it possible to create a map without having to follow instructions over here? Since I need to change the values in the map a lot.