title: Why do we not pass POD by reference in functions?
body: <p>I've always been told that we should not pass POD by reference. But recently I've discovered that a reference actually takes no memory at all.</p>
  
  <p>So why do we choose to write:</p>
  
  <pre><code>void DoSomething(int iNumber);
  </code></pre>
  
  <p>instead of:</p>
  
  <pre><code>void DoSomething(const int&amp; riNumber);
  </code></pre>
  
  <p>is it not more efficient?</p>