クラスのハッシュコードを生成するとき、そのクラスのメンバーのハッシュコードを使用してもよいですか? サンプルクラスは次のとおりです。
class Sample
{
private readonly string _strA, _strB;
public Sample(string strA, string strB)
{
this._strA = strA;
this._strB = strB;
}
public override int GetHashCode()
{
return (this._strA + "###" + this._strB).GetHashCode();
}
}
_strA にも _strB にも文字列 "###" が含まれていない限り、これは機能すると思います。ただし、文字列でハッシュコードがどのように生成されるかの詳細がわからないため、完全にはわかりません。
「目的に合わせて調整できる2 つの数値のハッシュコードを作成する」の投稿で解決策を見ましたが、私の解決策はもっと単純だと思います (どちらの文字列にも "###" が含まれていない限り)。