title: Move Semantics for POD-ish types
body: <p>Is there any point implementing a move constructor and move assignment operator for a struct or class that contains only primitive types? For instance,</p>
  
  <pre><code>struct Foo
  {
      float x;
      float y;
      float z;
  
      /// ... ctor, copy ctor, assignment overload, etc...
  
  
  };
  </code></pre>
  
  <p>I can see that, if I had something more complex, like:</p>
  
  <pre><code>struct Bar
  {
      float x,y,z;
      std::string Name;
  };  
  </code></pre>
  
  <p>where I'd rather move <code>Name</code> than copy it, a move ctor would make sense. However, "moving" a float doesn't (semantically) make sense to me.</p>
  
  <p>Thoughts?</p>