Class scope typedef bad practice?
<p>Is it bad practice to declare a typedef at class scope? Is it better to declare them for every function to make sure no one includes that file and then creates something with the same name?</p>

<p>For example</p>

<pre><code>typedef std::vector&lt;int&gt;::size_type vec_int;
</code></pre>

<p>Would be useful in some of my headers as in some classes there are many functions that use this type, but on the other hand I would have to put it in the header, wouldn't I? Or could I put it at the top of the source file?</p>
