C++报错(位于 **.exe 中)最可能的异常: Microsoft C++ 异常: std::out_of_range,位于内存位置 0x000007FEFDB0BE

0x000007FEFDB0BE0D 处(位于 demo.exe 中)最可能的异常: Microsoft C++ 异常: std::out_of_range,位于内存位置 0x00000000006D66B0 处。(try-catch抛出的异常)

出现上述问题最可能的错误是:C++标准库STL容器下标越界!!!
错误很难定位,找了一晚上;

//心电时间戳同步时间标记点 add by peter 20230826
PARAPOOL->m_SystemPara.curCineFlagClock = node._addNodetime;
PARAPOOL->m_SystemPara.beginCineFlagClock = List->at(startPos)._addNodetime;
if (endPos <= 0) {
endPos = 0;
PARAPOOL->m_SystemPara.endCineFlagClock = List->at(endPos)._addNodetime;
}
else {
PARAPOOL->m_SystemPara.endCineFlagClock = List->at(endPos - 1)._addNodetime;
}
//PARAPOOL->m_SystemPara.endCineFlagClock = List->at(endPos)._addNodetime; //越界endPos

注意:STL容器下标不要越界!!!

你可能感兴趣的:(c++,microsoft)