ハッシュを使用するクラスを定義すると、いくつかの質問が発生します。IDE 表示エラー:
「エラー C2665: “qHash”: 17 個のオーバーロードではすべてのパラメーター タイプを変換できません D:\Qt\Qt5.1.1_x86\5.1.1\msvc2012\include\QtCore\qhash.h 111 1」
例外コードは qHash(const Person &key) のオーバーロードだと思います。どうすれば対処できますか? 私のQTは5.1です。
class Person
{
public:
Person(const QString& name,const QString& number);
const QString& name() const;
const QString& number() const;
inline bool operator==(const Person &compare) const
{
return (name()==compare.name())&&(number()==compare.number());
}
uint qHash(const Person &key)
{
return qt_hash(key.name())^qt_hash(key.number());
}
private:
QString m_name,m_number;
};