title: Usage of "&" in function calls, confused
body: <p>Newbie to C, C++ and QT.</p>
  
  <p>I understand the usage of "&amp;" for retreiving the address location pointed to by a pointer, 
  but I am going through some C++ examples and I see the following:</p>
  
  <pre><code>int rowCount(const QModelIndex &amp;parent = QModelIndex()) const ;
  bool setData(const QModelIndex &amp; index, const QVariant &amp; value, int role = Qt::EditRole);
  </code></pre>
  
  <p>Is the usage of the "&amp;" in "&amp;parent" and " &amp; index" mean "pass-by-reference"?</p>
  
  <p>If so then why is the "&amp;" right before "parent" and there is a space in before "index"?</p>
  
  <p>Also are these the same as writng it as "QModelIndex&amp; parent"?</p>
  
  <p>Thanks for your help.  The syntax can be rather confusing.</p>