小菜来请教大家我要查询某个东西,先ReqXXX之后怎么取出来我要得结果,在外部定义一个全局指针,然后在OnRspXXX方法里面把用第一个参数赋值出来吗?
不知道有没有其他的方法。说明文档如下
==========================分割线================================
交易员API 提供了二个接口,分别为CThostFtdcTraderApi 和
CThostFtdcTraderSpi。这两个接口对FTD协议进行了封装,方便客户端应用程序
的开发。
客户端应用程序可以通过CThostFtdcTraderApi 发出操作请求,通继承
CThostFtdcTraderSpi并重载回调函数来处理后台服务的响应。3.1. 对话流和查询流编程接口
通过对话流进行通讯的编程接口通常如下:
请求:int CThostFtdcTraderApi::ReqXXX(
CThostFtdcXXXField *pReqXXX,
int nRequestID)
响应:void CThostFtdcTraderSpi::OnRspXXX(
CThostFtdcXXXField *pRspXXX,
CThostFtdcRspInfoField *pRspInfo,
int nRequestID,
bool bIsLast)
其中请求接口第一个参数为请求的内容,不能为空。
第二个参数为请求号。请求号由客户端应用程序负责维护,正常情况下每个
请求的请求号不要重复。在接收交易托管系统的响应时,可以得到当时发出请求
时填写的请求号,从而可以将响应与请求对应起来。
当收到后台服务应答时,CThostFtdcTraderSpi的回调函数会被调用。如果响
应数据不止一个,则回调函数会被多次调用。
回调函数的第一个参数为响应的具体数据,如果出错或没有结果有可能为
NULL。
第二个参数为处理结果,表明本次请求的处理结果是成功还是失败。在发生
多次回调时,除了第一次回调,其它的回调该参数都可能为NULL。
第三个参数为请求号,即原来发出请求时填写的请求号。