title: What's the recommended way of handling Winsock errors in C++?
body: <p>What's the recommended way of handling Winsock errors in C++?</p>
  
  <blockquote>
    <p>Checking the return code of every Winsock function you call in your application?</p>
  </blockquote>
  
  <p>Or</p>
  
  <blockquote>
    <p>Handling errors through exception handling (something like
    SocketException : public std::exception)?</p>
  </blockquote>
  
  <p>Or</p>
  
  <blockquote>
    <p>Both?</p>
  </blockquote>