Is it possible to manipulate some text with an user-defined I/O manipulator?
<p>Is there a (clean) way to manipulate some text from std::cin before inserting it into a <code>std::string</code>, so that the following would work:</p>

<pre><code>cin &gt;&gt; setw(80) &gt;&gt; Uppercase &gt;&gt; mystring;
</code></pre>

<p>where mystring is <code>std::string</code> (I don't want to use any wrappers for strings).
<code>Uppercase</code> is a manipulator. I think it needs to act on the Chars in the buffer directly (no matter what is considered uppercase rather than lowercase now). Such a manipulator seems difficult to implement in a clean way, as user-defined manipulators, as far as I know, are used to just change or mix some pre-determined format flags easily.</p>
