求救,wince移植到linux,结构体中string出现string赋值错误

boxiaoliao 2014-11-10 09:46:55
typedef struct tagGuideDBInfo_t
{
BYTE bytSysID;
W_UINT uiID;
W_UINT uiTaskID;
W_UINT uiDSID;
CBinary clBinFunList;
string strFirstScanProtocol;
//tagGuideDBInfo_t(void){strFirstScanProtocol.append("6000");}
}GuideDBInfo_t;

GuideDBInfo_t g_stIDFromGuideDB;

W_UINT MainMenuHandle(W_UINT iTaskId, CBinary idMenuText)
{
\\..........................
if(!GetIDFromGuideDB(g_stIDFromGuideDB))
{
}
\\..........................
}

bool GetIDFromGuideDB(GuideDBInfo_t& stGuideIDInfo)
{
...................................
string strGuideInfo = (char*)veTaskID[0].GetBuffer();
...............................
stGuideIDInfo.strFirstScanProtocol=strGuideInfo.substr(lPos1 + 1, lPos2 - lPos1 -1);
..............................
}

调试到stGuideIDInfo.strFirstScanProtocol赋值时发生错误strGuideInfo.substr绝对没有问题,我试过
测试时,stGuideIDInfo.strFirstScanProtocol.erase()这个函数都会报错。。。。实在想不明白
结构体用构造函数初始化还是有问题
大虾指点下,实在没招了
...全文
149 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
铖邑 2014-11-10
  • 打赏
  • 举报
回复
单独调用这个函数strGuideInfo.substr(lPos1 + 1, lPos2 - lPos1 -1); 确定没有问题吗?
zhxianbin 2014-11-10
  • 打赏
  • 举报
回复
用 C++ 呢,c 就没有 string

23,220

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧