title: Function dual to std::move?
body: <p>Let's assume I have a class with only one constructor:</p>
  
  <pre><code>class T {
   public:
    T(BigClass&amp;&amp; big) : big(std::move(big)) {}
    ...
  
    SomeBigClass
  };
  </code></pre>
  
  <p>In most places the constructor is called on temporaries but in one place I need to make an explicit copy of BigClass because it is not a temporary and will be used multiple times in a loop:</p>
  
  <pre><code>void foo(const BigClass&amp; big) {
    while (...) {
      T t(std::make_a_copy(big));
      ...
    }
  }
  </code></pre>
  
  <p>Is there any function "dual" to <code>std::move</code> in C++11 or C++14 that would replace make_a_copy above ?</p>
  
  <p><strong>Edit</strong>: Some clarifications.</p>