Как я могу сравнить первые N элементов стандартного идентификатора: : set?

Как я могу сравнить первые "n" элементов двух наборов, равны или нет? Моя следующая программа не работает, почему?

#include <iostream>
#include <iterator>
#include <set>
#include<algorithm>
using namespace std;

int main ()
{
  int n = 2;
  int myints1[] = {75,23,65,42,13};
  int myints2[] = {70,23,65,42,13};
  set<int> myset1 (myints1,myints1+5);
  set<int> myset2 (myints2,myints2+5);

  if(std::equal(myset1.begin(),myset1.begin() + n ,myset2.begin()))    //error
  std::copy(std::myset1.begin(),myset1.begin() + n,ostream_iterator<int>(cout," ")); //error
  cout << endl;

  return 0;
}

ОБНОВЛЕНИЕ:

Есть ли способ также сравнить определенный элемент? Спасибо.

5
задан Rob Kennedy 9 March 2011 в 03:06
поделиться