title: Using a function pointer with a trailing return type
body: <p>There are some Stack&nbsp;Overflow users who strongly advocate always using the new C++11 trailing return type convention when writing functions, such as <code>main()-&gt;int</code>. I can see advantages, as it makes the notation uniform. However, when declaring a function pointer, I cannot find any way of using a trailing return form, i.e. can declare either</p>
  
  <p><code>typedef int(*fp)(int);</code> </p>
  
  <p>or</p>
  
  <p><code>using fp = int(*)(int);</code></p>
  
  <p>for a function pointer taking an <code>int</code> and returning an <code>int</code>. </p>
  
  <p>Is there a way of using the new trailing return syntax in declaring such a function pointer? For example, something like</p>
  
  <p><code>using fp = (*)(int)-&gt;int;</code> </p>
  
  <p>but this doesn't compile. If not, is there a reason why the new syntax is not applicable to function pointers?</p>