interface that allows users to pass arguments
positionally or by name:</p>
<pre class="literal-block">
struct B { virtual ~B() = 0; };
struct D : B { ~D(); };

class_&lt;
     <strong>class_type&lt;B&gt;</strong>, <strong>copyable&lt;boost::noncopyable&gt;</strong>
&gt; …;

class_&lt;
    <strong>D</strong>, <strong>held_type&lt;std::auto_ptr&lt;D&gt; &gt;</strong>, <strong>base_list&lt;bases&lt;B&gt; &gt;</strong>
&gt; …;
</pre>
<!-- @ignore() -->
<div class="section" id="template-keywords">
<h4>2.4.1.