1.主函数的设计:
设计思想:
(1)主函数里面分步设计,然后每一步设计一个子函数.。
(2)每一个子函数的参数到底是传入还是传出设计清晰,每一个子函数加上详细的解释。
(3)一定要判断返回值,每一步加上详细的日志跟踪。
在雁联计算中做的CIP自动调减功能的开发主函数设计流程:
/*
* 此函数是CIP自动调减的 主函数,所有的步骤均在它的子函数里:
*/
int CIPAutoReduce()
{
/*
*详细设计流程:
1.判断系统状态,开关是否开启,数据库是否连接,平台管理器是否连接。
2.获取系统参数,判断当前时间段是进行注资调减还是预注资调减。
3.向CIPS发送356报文,然后CIPS给参与者回复357报文,查询356报文的当前余额也就是人行头寸。根据人行头寸计算出调减金额,如果是预注资,组351发送CIPS进行调减,如果是注资,发送350进行注资调减,最后根据CIPS回复查351/350的处理状态,判断是否调减成功。
注明:由于此处伪代码,此处的调用我写为声明,方便区分识别子函数
*/
/*
* 1.判断系统状态
*/
bool IsNewReduce()
{
bool iRet=false;
1.此处放局部变量
2.子函数或者逻辑
3.返回值 return iRet;
}
if(IsNewReduce())
{
trace("IsNewReduce为真,,,,,,,");
}
else
{
trace("IsNewReduce为假");
}
2.判断当前是注资调减还是预注资调减:
bool ReduOrProRdu()
{
bool iRet=false;
1.定义局部变量;
2.函数或者逻辑
3.返回值:return iRet;
}
if(ReduOrProRdu())
{
trace("ReduOrProRedc()为真");
}
else
{
trace("ReduOrProRedc()");
}
}
3.略:
return 0;
}