title: What's your convention for typedef'ing shared_ptr?
body: <p>I'm flip-flopping between naming conventions for <code>typedef</code>'ing the <code>boost::shared_ptr</code> template. For example:</p>
  <pre><code>typedef boost::shared_ptr&lt;Foo&gt; FooPtr;
  </code></pre>
  <p>Before settling on a convention, I'd like to see what others use. What is your convention?</p>
  <p><strong>EDIT:</strong></p>
  <p>To those nesting the <code>typedef</code> inside <code>Foo</code>, doesn't it bother you that <code>Foo</code> is now &quot;aware&quot; of how it will be passed around? It seems to break encapsulation. How about this:</p>
  <pre><code>class Foo
  {
  public:
      typedef std::vector&lt;Foo&gt; Vector;
  };
  </code></pre>
  <p>You wouldn't do this now, would you? :-)</p>