title: Why i can't use LPCRITICAL_SECTION and CRITICAL_SECTION
body: <p>I'm working on a shared project.
  I got some identifier errors, VS C++ 2005 doesn't know CRITICAL_SECTION and LPCRITICAL_SECTION.</p>
  
  <pre><code>LPCRITICAL_SECTION GetReadCS() { return &amp;m_ReadCS; }
  LPCRITICAL_SECTION GetWriteCS() { return &amp;m_WriteCS; }
  </code></pre>
  
  <p>and</p>
  
  <pre><code>CRITICAL_SECTION    m_ReadCS;
  CRITICAL_SECTION    m_WriteCS;
  </code></pre>
  
  <p>and got some errors</p>
  
  <pre><code>warning C4183: 'GetReadCS': missing return type; assumed to be a member function returning 'int'
  warning C4183: 'GetWriteCS': missing return type; assumed to be a member function returning 'int'
  error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
  error C2146: syntax error : missing ';' before identifier 'm_WriteCS'
  </code></pre>
  
  <p>Why LPCRITICAL_SECTION and CRITICAL_SECTION is undefined? How do I can make C++ know it ?</p>