title: error C2661: no overloaded function takes 2 arguments
body: <p>I'm using Visual Studio 2010 for win32 application development. Try to compile one existing c++ source file, which was already compiled in GCC (Linux).</p>
  
  <pre><code>#define DEFINE_PORT( parentClass, portClass, name, dataMember, callbacks,... )     
     do                                                                          
     {                                                                           
        dataMember = new portClass&lt;parentClass&gt;( *this, callbacks );            
        err = addProvidesPort( name, dataMember );                               
     }                                                                           
     while(0)
  </code></pre>
  
  <p>Here I'm invoking this function as:</p>
  
  <pre><code>   DEFINE_PORT( Service_impl,
                           ECPDataStoreProvidesPort,
                           ECP_DATA_STORE,
                           pECPDataStorePP,
                           &amp;Service_impl::GetDataVersion,
                           &amp;Service_impl::SetDataVersion,
                           &amp;Service_impl::LoadData,
                           &amp;Service_impl::StoreData,
                           &amp;ECPService_impl::EnableBlobOperations,
                           &amp;ECPService_impl::GetCurrentPersonalityIndex,
                           &amp;ECPService_impl::SwapPersonalities,
                           &amp;ECPService_impl::UpdateDataStoreBlob,
                           &amp;ECPService_impl::ExtractDataStoreBlob,
                           &amp;ECPService_impl::GetConstantPersonalityPtr );
  </code></pre>
  
  <p><code>ECPDataStoreProvidesPort</code> class has constructor defined with 10 no of arguments.
  Here VS compiler is not considering the variable length arguments and producing error as <code>portclass</code> has no overloaded constructor defined for two aruguments.</p>
  
  <p>May anyone please help me out on this? What can be cause and How to handle this error?</p>