dll中數據調用的問題 [金字塔]
-
咨詢內容:
我在dll中調用以下函數中data.size()?不為空。__declspec(dllexport) int WINAPI kxian(CALCINFO* pData)
{
if(pData->m_nNumData>0)
{
ChanlunCore::GetInstance()->initKx(pData);
ChanlunCore::GetInstance()->initFX();
// 返回結果集
int i=0;
KXDATA data = ChanlunCore::GetInstance()->getCkxData();
for(C_CKXIT it = data.begin(); it != data.end(); it++)
{
pData->m_pResultBuf[i] = it->flag;
i++;
}
ofstream write;?
write.open("D:\\lc\\KXIAN.txt", ios::app);
write << "data.size()" << data.size() << "\n";
return 0;
}
return -1;
}
但是在第二次獲取data數據時 ,data數據就獲取不到了, data.size()為0.__declspec(dllexport) int WINAPI kxg(CALCINFO* pData)
{
int i=0;
KXDATA data = ChanlunCore::GetInstance()->getCkxData();
for(C_CKXIT it = data.begin(); it != data.end(); it++)
{
pData->m_pResultBuf[i] = it->high;
i++;
}
ofstream write; //write只是個名字 你可以定義為任何其他的名字
write.open("D:\\lc\\kxg.txt", ios::app);
write << "data.size()" << data.size() << "\n";
return 0;
}
這是什么情況??
?來源: CXH99.COM
-
金字塔客服:
您的問題正在處理,請您耐心等待。
?
-
用戶回復:
我們進行調試的話,日志是我們的一大法寶。1要先確定數據初始化kxian()函數是不是在使用數據的kxg()函數之前調用的。2要確定ChanlunCore的single再這中間不會析構導致再第一函數中的數據被清理掉。
建議:編程時盡量保持模塊的獨立性,去除模塊相關性,尤其是隱形相關。
有思路,想編寫各種指標公式,程序化交易模型,選股公式,預警公式的朋友
可聯系技術人員 QQ: 511411198 進行 有償 編寫!(不貴!點擊查看價格!)
相關文章
-
沒有相關內容