本节将介绍第一个实现具体传输功能的类TSocket,这个类是基于TCP socket实现TTransport的接口。下面具体介绍这个类的相关函数功能实现。
1.构造函数
分析一个类的功能首先看它的定义和构造函数实现,先看看它的定义:
TSocket类的构造函数有4个,当然还有一个析构函数。四个构造函数就是根据不同的参数来构造,它们的声明如下:
1.构造函数
分析一个类的功能首先看它的定义和构造函数实现,先看看它的定义:
class TSocket : public TVirtualTransport<TSocket> { ......}
由定义可以看书TSocket继承至虚拟传输类,并且把自己当做模板参数传递过去,所以从虚拟传输类继承下来的虚拟函数(如read_virt)调用非虚拟函数(如read)就是TSocket自己实现的。
TSocket类的构造函数有4个,当然还有一个析构函数。四个构造函数就是根据不同的参数来构造,它们的声明如下:
TSocket();//所有参数都默认
TSocket(std::string host, int port);//根据主机名和端口构造一个socket
TSocket(std::string path);//构造unix域的一个socket
TSocket(int socket);//构造一个原始的unix句柄socket
四个构造函数分别用于不同的情况下来产生不同的TSocket对象,不过这些构造函数都只是简单的初始化一些最基本的成员变量&