title: Difference between operator and function in C++?
body: <p>I could use some help understanding the following in C++, particularly the difference between an operator and a function:</p>
  
  <ul>
  <li>What is an operator?</li>
  <li>What is a function?</li>
  <li>What is the difference between them?</li>
  <li>Is a user-defined <code>operator+()</code> a <em>function</em> or an <em>operator</em>?</li>
  <li>Can an operator operate on operands at compile-time? Do they always operate at compile time? (like <code>sizeof()</code> in C++)</li>
  </ul>