title: One question about function definition in C++
body: <p>I'm reading some material about function pointer in C++, and come across one function definition which I do not understand.<br>
  Standard function definition have the form:<br></p>
  
  <pre><code>type name (param...)
  </code></pre>
  
  <p>But the following definition seems a little strange to me. Can anyone explain it to me ?
  Thanks.<br></p>
  
  <pre><code>float (*GetPtr1(const char opCode)) (float, float)&lt;br&gt;
  {
      if(opCode == '+')
          return &amp;Plus;
      else
          return &amp;Minus; // default if invalid operator was passed
  }
  </code></pre>
  
  <p><br></p>
  
  <p>Note: Plus and Minus are two functions with param (float, float) and return a float.</p>