title: Two parentheses after variable?
body: <p>I have something like this in one method </p>
  
  <pre><code>    autoPtr&lt;LESModel&gt; LESModel::New   
   95 (
   96  const volVectorField&amp; U,
   97  const surfaceScalarField&amp; phi,
   98  transportModel&amp; transport,
   99  const word&amp; turbulenceModelName
  100 )
  101 {
       ...
  122  dictionaryConstructorTable::iterator cstrIter =                       
  123  dictionaryConstructorTablePtr_-&gt;find(modelType);
       ...
  143  return autoPtr&lt;LESModel&gt;      
  144  (
  145  cstrIter()(U, phi, transport, turbulenceModelName)
  146  ); 
  147  }
  </code></pre>
  
  <p>If I am right <code>cstrIter</code> is a variable of class <code>dictionaryConstructorTable::iterator</code> (could not find this class though) and beginning with line 143 the constructor <code>autoPtr&lt;LesModel&gt;</code> is called and the result returned. The parentheses after the constructor <code>autoPtr&lt;LESModel&gt;</code> therefore should be parameters and since cstrIter is a variable I am wondering what the two parentheses after the variable mean. Perhaps I am misreading something?</p>