Force user to declare object const
<p>Is there a way to force the user of a class to construct <code>const</code> objects based on data used for the constructor? </p>

<p>For example, consider a small wrapper class around some buffer that can be <code>const</code> or non-<code>const</code></p>

<pre><code>class Wrapper {
  public:
    Wrapper(const char*);
    Wrapper(char*);
}; 
</code></pre>

<p>Now if the user is supplying a <code>const</code>, can I force them to declare the object to be <code>const</code> on compile time. That is</p>

<pre><code>// you have to do this if the input is const 
const char* a; 
// this will not compile 
Wrapper w(a); 
// but this will 
const Wrapper(a);
</code></pre>

<p>Any ideas?</p>
