循环向vector数组中赋值,循环条件值变化并报错
定义了一个vector,然后通过循环向数组中赋值
int nNum = myStruct.nsize();
for(int i;i<nNum;i++)
{
.........variable//获得变量值,
myStruct.legs.push_back(variable);
}
可是执行到push_back的时候,nNum的值就变化了,例如,原来为1,执行到这里,就变为36,不知道为什么会变化,
我加了一个变量,保存nNum值,push_back后,再将变量值赋给nNum,这样又会出问题,当nNum为2的时候,第二次执行循环体,就会报assert错误,显示_ASSERTE(_CrtIsValid HeapPointer(pUserData))错误。
盼解答 谢谢^_^