title: Why link error on struct itself?
body: <p>I use Visual Studio 2013 express version. I had a declaration like that:</p>
  
  <pre><code>typedef struct tagActionData
  {
      int             id;
      float           BoxW, BoxH;
      bool            bBoxRotate; // ==0 : 不BOX2D旋轉, ==1 會依 BOX2D 角度旋轉
      int             FreeCounter;
      char            SoundName[21];
      int             WindIndex;
      float           fWindRate;
      view_port       vp;
      // ... other fields ...
  
  } ACTIONDATA, *LPACTIONDATA;
  </code></pre>
  
  <p>When I build my code, compilation is ok, but I got the link error:</p>
  
  <pre><code>2&gt;LINK : warning LNK4098: 預設的程式庫 'MSVCRT' 與其他使用的程式庫衝突，請使用 /NODEFAULTLIB:library
  2&gt;cocos_igs_action.obj : error LNK2001: 無法解析的外部符號 "struct tagActionData * ActionData" (?ActionData@@3PAUtagActionData@@A)
  </code></pre>
  
  <p>That's really weird. Why struct declaration can cause link error?
  Any suggestions?</p>