📄 qnetbase.h
字号:
#ifndef QNetBaseH
#define QNetBaseH
#include <string>
#include <vector>
//---------------------------------------------------------------------------
//注意,所有_Q*的Socket相关全局函数失败均不自动CloseSocket
//---------------------------------------------------------------------------
//连接结构
struct QConn
{
std::string IpAddr;
unsigned int Port;
};
//---------------------------------------------------------------------------
void _QClose(int Handle);
void _QShutdown(int Handle);
//---------------------------------------------------------------------------
void _QSetBlock(int Handle, bool Block);
//---------------------------------------------------------------------------
int _QCreateSocket();
bool _QConnect(int Handle, const std::string &IpAddr, unsigned int Port, bool Block);
//---------------------------------------------------------------------------
bool _QSpBind(int Handle, unsigned int Port);
bool _QBind(int Handle, unsigned int Port);
bool _QAccept(int Handle, int* Newint);
//---------------------------------------------------------------------------
bool _QSend(int Handle, std::string* Data);
bool _QSend(int Handle, const std::string& Data, int* lpSend);
bool _QRecv(int Handle,std::string* Data);
bool _QRecv(int Handle, std::string* Data, unsigned int MaxGet);
bool _QRecvSeg(int s, std::string* Data, const std::string &EndSign, int Max, int RecvSafeTimeOut);
//---------------------------------------------------------------------------
QConn _QGetRemote(int Handle);
QConn _QGetLocal(int Handle);
//---------------------------------------------------------------------------
bool _QSetDontLinger(int Handle);
//---------------------------------------------------------------------------
//超时设置
bool _QSetTimeOutIn(int Handle, int TimeOut);
bool _QSetTimeOutOut(int Handle, int TimeOut);
//---------------------------------------------------------------------------
//bool _QSelect(FD_SET* Read,FD_SET* Write,FD_SET* Except,int WaitMSec);
//---------------------------------------------------------------------------
//缓冲设置
void _QSetRecvBufSize(int Handle, unsigned int Byte);
void _QSetSendBufSize(int Handle, unsigned int Byte);
//---------------------------------------------------------------------------
//等待
bool _QWaitIn(int Handle, int MSec);
bool _QWaitOut(int Handle, int MSec);
bool _QWaitInOut(int Handle, int MSec);
//---------------------------------------------------------------------------
void _QSelectRead(const std::vector<int>& SourceSockets, std::vector<int>* pOutPut);
void _QSelectWrite(const std::vector<int>& SourceSockets, std::vector<int>* pOutPut);
void _QSelectExcept(const std::vector<int>& SourceSockets, std::vector<int>* pOutPut);
//---------------------------------------------------------------------------
std::string _QNameToIp(const std::string &HostName);
std::string _QIpToName(const std::string &Ip);
std::string _QGetHostName();
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -