これはコードです:
struct comp
{
bool operator()(Reputation *one, Reputation *two)
{
if (one->Amount < 0 && two->Amount >= 0)
return false;
if (one->Amount >= 0 && two->Amount < 0)
return true;
if (one->Amount >= 0)
return one->Amount <= two->Amount;
else
return one->Amount >= two->Amount;
}
};
そして、これが問題です:
デバッグ アサーションに失敗しました!
ファイル: ..\VC\include\xtree
行: 638式: 無効な演算子 <
その後、「中止」、「再試行」、または「無視」を選択できます。無視を選択すると、さらに多くの(同一のもの)が出てきますが、完全に機能します。
->Amount == で Reputation を以前に挿入された Reputation * の 1 つに挿入すると、問題が発生するようですが、この最後のものについてはわかりません。
どんな助けでも大歓迎です
編集:私がそれらを並べたい順序は、最初に昇順の正のもの、次に降順の負のものです。例: 1 5 10 11 11 20 50 -1 -5 -50