2

文字列をカスタム クラスの 1 つにキー設定する C++ 順不同マップを作成しようとしています。すなわち:

名前 -> 従業員情報

次の 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 型の等価演算子がないためですか? もしそうなら、誰かがこれをどこにどのように書くか教えてもらえますか。大文字と小文字を区別しない文字列キーが必要です。

ありがとう!

4

1 に答える 1

2

文字列ヘッダーを含めるのを忘れているに違いありません。これにより、すべての文字列演算子が定義されます。

于 2013-08-27T21:07:41.100 に答える