0

で使おうとしていgreater_equal predicateましたincludes() algorithm。次のコードを書きました。

#include <iostream>
#include <algorithm>
#include <functional>

int main()
{
    int a[] = {1, 2, 3, 4, 5, 6, 7, 8, 10, 9, 10};
    int b[] = {4, 3, 5, 1, 2, 6, 8, 9, 7, 10, 11};
    unsigned int alen = sizeof(a) / sizeof(int), blen = sizeof(b) / sizeof(int);
    std::sort(a, a + alen);
    std::sort(b, b + blen);

    if(std::includes(a, a + alen, b, b + blen, std::greater_equal<int>()))
        std::cout << "a contains b" << std::endl;
}

a contains b述語は in にあるすべての要素を満たす必要があるため、これgreater_equal predicateが出力されることを期待していましたが、そうではありません。私はその使用法について少し混乱しています。助けてください。ba

4

1 に答える 1