title: 'No matching function' -error when trying to insert to a set (c++)
body: <p>I have the following code:</p>
  
  <pre><code>class asd {  
      public:  
      int b;  
      asd() { b = rand() % 10; }  
      bool operator&lt;(asd &amp;other) { return b &lt; other.b; }  
  };
  
  int main() {  
      asd * c; c = new asd();  
      set &lt;asd&gt; uaua;  
      uaua.insert(c);  
  }
  </code></pre>
  
  <p>Yet when running it, I get this error:</p>
  
  <p><code>main.cpp|36|error: no matching function for call to ‘std::set&lt;asd, std::less&lt;asd&gt;, std::allocator&lt;asd&gt; &gt;::insert(asd*&amp;)’|</code></p>
  
  <p>I'm using g++ 4.4.3</p>
  
  <p>Could someone please tell me where I'm going wrong? I've tried to crack this for a good while, but can't seem to find the solution. Thanks</p>