C++ Vector.push_back方法添加结构体异常

代码如下,vec.push_back方法添加的stTest结构体异常,这是为什么????????????



    struct  stTest
{
    CString str;
    double dbX[4];
    double dbY[4];
    stTest& operator=(const stTest& value)
    {
        str=value.str;
        ::memcpy((void*)dbX,(void*)value.dbX,sizeof(double)*4);
        ::memcpy((void*)dbY,(void*)value.dbY,sizeof(double)*4);
        return *this;
    }
};
stTest stTest1;
std::vector<stTest> vec;
CString str;
for(int i=0;i<4;i++)
{
    stTest1.str.Format("TEST%d",i);
    for(int j=0;j<4;j++)
    {
        str.Format("1%d%d",i,j);
        stTest1.dbX[j]=atof(str);
        str.Format("2%d%d",i,j);
        stTest1.dbY[j]=atof(str);
    }
    vec.push_back(stTest1);
}

img

没看出来有啥问题

第一次用vector存放结构体类型,然后push_back到第三个就出现异常了,但是定义vector时确定好大小,之后赋值就没问题了