title: inline function redefinition linking error
body: <p>I got a class exported in dll. And got inline functions in that exported class:</p>
  
  <p>Header.h</p>
  
  <pre><code>class MODULE_EXPORT A
  {
   public:
      int GetInt(){ return iSomeInt; }
  };
  </code></pre>
  
  <p>When I include that header file in a seperate module. I Got error LNK2005 which means:  GetInt() already defined.</p>
  
  <p>If I put the function definition in .cpp file . NO error occurs.</p>
  
  <p>GetInt is inline function if I define it that way in the header file ,right?  so why the redefinition linking error?  I use the vc++ compiler. (Visual Studio 2010).</p>
  
  <p>EDIT:</p>
  
  <pre><code>#pragma  once 
  </code></pre>
  
  <p>has already been added to the header file. Forgot to mention that.</p>