00001 00011 #ifndef SOCKET_H 00012 #define SOCKET_H 00013 00014 #include "demo_header.h" 00015 00016 #ifdef WIN32 00017 #include <windows.h> 00018 #include <winsock.h> 00019 #include <io.h> 00021 #define ioctl ioctlsocket 00022 #else 00023 #include <sys/socket.h> 00024 #include <arpa/inet.h> 00025 #endif 00026 00027 #include <fcntl.h> 00028 00030 #define SA struct sockaddr 00031 00035 class Socket { 00036 public: 00037 Socket(); 00038 00039 ~Socket(); 00040 void Connect(const string& ip, int port); 00041 string Read(); 00042 bool Write(string& data); 00043 protected: 00044 int socket_fd; 00045 struct sockaddr_in ServAddress; 00046 00047 }; 00048 00049 #endif