我正在尝试创建一个C ++无序映射,将字符串键入我的一个自定义类。即:
名称 - > EmployeeInfo
我使用了以下typedef来定义无序映射:
typedef std::unordered_map< std::string, class Employee > EmployeeStore;
但我收到编译错误:
error C2678: binary '==' : no operator found which takes a left-hand operand of type 'const std::string' (or there is no acceptable conversion)
这是因为地图模板没有类型为std :: string的等价运算符吗?如果是这样,有人可以告诉我在哪里以及如何写这个。我只想要一个不区分大小写的字符串键。
谢谢!
答案 0 :(得分:2)
我敢打赌你忘了包含字符串标题。那应该定义所有字符串运算符。