title: How to initialize a tuple of non-default-constructible not-copyable objects?
body: <p>Given some classes with parameterized constructors, such as:</p>
  
  <pre><code>class A
  {
  public:
      A(bool b, int i) { /*...*/ }
  private:
      A(const A&amp;) {}
  };
  class B
  {
  public:
      B(char c, double d) { /* ... */ }
  private:
      B(const B&amp;) {}
  };
  </code></pre>
  
  <p>How to properly initialize a tuple of such classes?</p>
  
  <pre><code>boost::tuple&lt;A,B&gt; tup( /* ??? */ );
  </code></pre>
  
  <p>Not using copy constructor of A or B, and, if possible, not using move-constructor either. C++03 solution preferred, if possible.</p>