最近项目外面反馈程序出现闪退问题,根据一步步调试,发现在记录日志中导致,
之前代码是从其他地方拷贝,修改部分地方没注意.
报错代码:
QString strLog=QString("[超标留样],留样瓶号为%1").arg(strLog).arg(m_pCYQ->GetBottleNum());
原本定义为:
QString strLog=QString::fromUtf8("超标留样");
strLog=QString("[%1],留样瓶号为%2").arg(strLog).arg(m_pCYQ->GetBottleNum());
前面没有定义就使用了strLog,导致程序崩溃,这种明显错误在编译的时候没有报出来,看来使用arg时候还是要小心点。