me T&gt;

class c&lt;U&gt;{ /*details*/ };</pre>

<p>This rule is by no means foolproof, but it is reasonably
simple to remember and close enough to the actual rule to be
useful for everyday use.</p>

<p>As a more complex example of partial specialisation consider
the class remove_bounds&lt;T&gt;. This class defines a single
typedef-member <i>type</i> that is the same type as T but with
any top-level array bounds removed; this is an example of a
traits class that performs a transformation on a type:</p>

<p