1

私は C++ が初めてで、から使用する必要がありますSetSTL、概念に苦労しています。

私はこのような配列を持っていますint my_data[3]

私は(これが可能かどうかわからない)set3 ints のスペースを持つa を作成keysetたいと思います。これintは最初の列に格納されます。

カスタムソートも作りたいです。

これは私が試したものですが、成功しませんでした。

struct sort_set {
    bool operator() (const int& a, const int& b) const {
        int* arr1 = (int*) a;
        int* arr2 = (int*) b;
        int diff = arr2[1] - arr1[1];
        if (diff) {
            return true;
        } else if (diff == 0) {
            int diff2 = arr2[2] - arr1[2];
            if (diff2) {
                return false;
            }

        }
        return arr1[0] < arr2[0];
    }
};

set<int[3],sort_set> data;

誰かが私を正しい方向に向けることができますか?

4

1 に答える 1