以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://www.weistock.com/bbs/index.asp)
--  高级功能研发区  (http://www.weistock.com/bbs/list.asp?boardid=5)
----  示例里面的return nPeriod-1有什么意义,去掉好像不行  (http://www.weistock.com/bbs/dispbbs.asp?boardid=5&id=160257)

--  作者:xugjniu
--  发布时间:2017/12/8 10:40:44
--  示例里面的return nPeriod-1有什么意义,去掉好像不行

示例里面的return nPeriod-1;有什么特别的意义吗?去掉了好像会出错!

以下是示例

__declspec(dllexport) int WINAPI MYMACLOSE(CALCINFO* pData)
{
 if ( pData->m_pfParam1 &&    //参数1有效
   pData->m_nParam1Start<0 &&   //参数1为常数
   pData->m_pfParam2==NULL )   //仅有一个参数
 {
  float fParam = *pData->m_pfParam1;
  int nPeriod = (int)fParam;   //参数1
  if(nPeriod>0)
  {
   float fTotal;
   int i, j;
   for ( i = nPeriod-1; i < pData->m_nNumData; i++ )//计算nPeriod周期的均线,数据从nPeriod-1开始有效
   {
    fTotal = 0.0f;
    for ( j = 0; j < nPeriod; j++ )    //累加
     fTotal += pData->m_pData[i-j].m_fClose;
    pData->m_pResultBuf[i] = fTotal/nPeriod; //平均
   }
   return nPeriod-1;
  }
 }

 return -1;
}


--  作者:yukizzc
--  发布时间:2017/12/12 9:38:21
--  
这是为了给定义的函数一个返回值,所以必须要加个return