title: Simple overloading of operator= not working
body: <p>I'm in the process of modifying my <a href="http://calccrypto.wikidot.com/programming%3ainteger" rel="nofollow"><code>integer</code></a> class (that's not my most updated copy, but it works with <code>-std=c++0x</code>). I came across a <em>slight</em> problem: a simple operator overloading refuses to work no matter what I do. this code:</p>
  
  <pre><code>#include &lt;deque&gt;
  #include &lt;iostream&gt;
  #include &lt;stdint.h&gt;
  
  class integer{
      private:
          std::deque &lt;uint8_t&gt; value;
  
      public:
          integer(){}
  
          integer operator=(int rhs){
              return *this;
          }
  };
  
  int main() {
          integer a = 132;        
          return 0;
  }
  </code></pre>
  
  <p>gives me: <code>error: conversion from ‘int’ to non-scalar type ‘integer’ requested</code>, but isn't that the whole point of overloading <code>operator=</code>? I have changed the <code>int</code> part to <code>template &lt;typename T&gt;</code> but that doesn't work either.</p>
  
  <p>What am I missing?</p>