title: Creating C++ objects
body: <p>I noticed that there are two ways to create C++ objects:</p>
  
  <pre><code>BTree *btree = new BTree;
  </code></pre>
  
  <p>and</p>
  
  <pre><code>BTree btree;
  </code></pre>
  
  <p>From what I can tell, the only difference is in how class objects are accessed (. vs. -> operator), and when the first way is used, private integers get initialized to 0.</p>
  
  <p>Which way is better, and what's the difference?</p>
  
  <p>How do you know when to use one or the other?</p>