title: binary '==': no operator found which takes a left-hand operand of type 'std::vector<int,std::allocator<_Ty>>' (or there is no acceptable conversion)
body: <pre><code>#include "stdafx.h"
  #include &lt;iostream&gt;
  #include &lt;algorithm&gt;
  #include &lt;string&gt;
  #include &lt;vector&gt;
  
  using namespace std;
  
  
  int main()
  {
      int t;
      cin &gt;&gt; t;
      while (t--)
      {
          int n, m;
          cin &gt;&gt; n &gt;&gt; m;
          vector &lt;vector&lt;int&gt; &gt; A(m, vector&lt;int&gt;(2));
          vector&lt;int&gt; possible;
          vector&lt;int&gt; set;
          int i;
          for (i = 0;i &lt; m;i++)
          {
              cin &gt;&gt; A[i][0] &gt;&gt; A[i][1];
              possible.push_back(A[i][0]);
              possible.push_back(A[i][1]);
          }
              sort(possible.begin(), possible.end());
              int j = 0;
              bool size = 0;
              for (i = 0;i &lt; possible.size();i++)
              {
                  set.push_back(possible[i]);
                  while (possible[i] == set[j])
                  {
                      i++;
                      if (i == possible.size())
                      {
                          size = 1;
                          break;
                      }
                  }
                  if (size)
                      break;
                  i--;
                  j++;
              }
              vector&lt;int&gt; iter;
              for (i = A.size() - 1;i &gt;= 0;i--)
              {
                  auto it1 = find(A.begin(), A.end(), A[i][0]);
                  auto it2 = find(A.begin(), A.end(), A[i][1]);
                  if ((it1 != A.end()) &amp;&amp; (it2 != A.end()))
                  {
                      iter.push_back(i);
                      A.erase(it1);
                      A.erase(it2);
                  }
              }
              for (i = iter.size() - 1;i &gt;= 0;i--)
                  cout &lt;&lt; iter[i] &lt;&lt; " ";
              cout &lt;&lt; endl;
          }
          return 0;
  }
  </code></pre>
  
  <p>this is a code i wrote for a problem i found on codechef, anyway heres the thing, i keep getting the error <code>binary '==': no operator found which takes a left-hand operand of type 'std::vector&lt;int,std::allocator&lt;_Ty&gt;&gt;' (or there is no acceptable conversion)</code> going through the xutility "page", quite simply put, i dont even know why i get this error could someone please explain whats going on
  heres the code snippet that i'm redirected to when i double click on the error</p>
  
  <pre><code>template&lt;class _InIt,
      class _Ty&gt; inline
      _InIt _Find_unchecked1(_InIt _First, _InIt _Last, const _Ty&amp; _Val, false_type)
      {   // find first matching _Val
      for (; _First != _Last; ++_First)
          if (*_First == _Val)
              break;
      return (_First);
      }
  </code></pre>
  
  <p>also, could anyone explain what the auto keyword does, i'm kinda iffy on its usage, could someone explain that as well</p>