title: If I delete the copy constructor, do I get no implicit move constructor?
body: <p>The following wont compile (tried both clang &amp; gcc)</p>
  
  <pre><code>#include &lt;vector&gt;
  
  struct Foo
  {
      Foo(int a=0) : m_a(a) {}
      Foo(const Foo&amp; f) = delete;
      // Foo(Foo&amp;&amp; f) = default;
  private:
      int m_a;
  };
  
  int main()
  {
      std::vector&lt;Foo&gt; foovec;
      foovec.emplace_back(44); // might resize, so might move
  }
  </code></pre>
  
  <p>But if I don't delete the copy constructor, or if I default the move constructor, <br>
  it will work. So, does deleting copy constructor suppress move constructor, <br>
  and <em>what is the rational behind that</em>?</p>