私はC++で2つの範囲の交差点を見つけようとしていますか?たとえば、範囲が[1..14]と[10..20]との間にある場合、[10..14]を取得したいと思います。C++:2つの範囲の交差
私は次のように方法を見つけた:
intersection = { std::max(arg1.min, arg2.min), std::min(arg1.max, arg2.max) };
if (intersection.max < intersection.min) {
intersection.markAsEmpty();
}
私はいくつかの変数は以下のよう持っている:私は交差点を見つけようとしている
unsigned long long int min1,min2,max1,max2
いるが。次に、私は次のようにしました:
intersection = { std::max(min1, min2), std::min(max1, max2) };
if (intersection.max < intersection.min) {
intersection.markAsEmpty();
}
しかし、これは、unsigned long long intを使用できないというエラーを示しています。交差点を見つけるにはどうすればいいですか?
を定義していますか? – jpo38
ブラインド "コピーアンドペースト"が良くありません。あなたがコピーしたコードでは、 'intersection'は明らかにメンバ' max'と 'min'を持つクラス型のオブジェクトです。 – WhiZTiM
こちらをご覧くださいhttp://stackoverflow.com/help/mcve – jpo38