t;A&amp;, const B&amp;&gt;
make_tuple(cref(ca));        // creates tuple&lt;const A&amp;&gt;
make_tuple(ref(ca));         // creates tuple&lt;const A&amp;&gt;
</code></pre>


<p>
Array arguments to <code>make_tuple</code> functions are deduced to reference to const types by default; there is no need to wrap them with <code>cref</code>. For example:
<pre><code>make_tuple(&quot;Donald&quot;, &quot;Daisy&quot;);
</code></pre>

This creates an object of type <code>tuple&lt;const char (&amp;)[7], const char (&am