title: symbol is multiply defined
body: <p>I have a .h file </p>
  
  <p>test.h</p>
  
  <pre><code>std::list&lt;std::string&gt; RegisterList;
  </code></pre>
  
  <p>I want to access this list in 2 .c files</p>
  
  <p>A.c</p>
  
  <pre><code>#include "test.h"
  
  RegisterList.push_back(myString);
  </code></pre>
  
  <p>B.c</p>
  
  <pre><code>#include "test.h"
  
  RegisterList.push_back(myString2);
  </code></pre>
  
  <p>When i compile this code, i get an error
  ld: fatal: symbol `RegisteredList' is multiply-defined:</p>
  
  <p>What can be the problem ? Is RegsiterList is initialized by default in test.h which is leading to this problem ?</p>