vector dbgheap.c 오류 관련
안녕하세요 vector에 관한 질문이 있어 이렇게 글을 올립니다.
지난번에 올렸으나 아직 해결을 못해 구체적인 사용 지점을 추가하여
다시 한번 올립니다. pTrack에 데이터를 삽입을 해야하는데
다른 변수들(RSS, Deeps, GDH)은 정확하게 삽입이 되고 있습니다.
그러나 Point_ADD에도 데이터를 삽입이 필요하여
다음과 같은 코드를 pTrack->Point_ADD.push_back(pline); 추가하였습니다만
추가하면 에러가 발생하는듯 합니다. 호출스택을 보면 dbgheap.c부분에서
나고 있어 찾기가 쉽지 않아 도움을 고수님들께 부탁드립니다.
이렇게 올리면 보기 힘들것 같아 죄송하지만...
작은 도움이나 청하려고 이렇게 올립니다...
혹시 몰라 dbgheap.c 스크린 샷도 첨부합니다.
/////////////////// common_Type.h ////////////////////////
class predicted
{
public:
double m_f64x;
double m_f64y;
double m_f64z;
}
typedef struct Info
{
std::vector Point_ADD;
int RSS
BOOL ACTS;
double Deeps[2];
double GDH[2];
Info()
{
RSS=0;
ACTS = FALSE;
memset(Deeps, 0x00, sizeof(Deeps));
ZeroMemory(GDH, 0x00, sizeof((GDH));
}
Info & operator=(const Info& rack)
{
RSS = rack.RSS;
ACTS = rack.ACTS;
memcpy(&Deeps[0],&rack.Deeps[0],sizeof(Deeps));
memcpy(&GDH[0],&rack.GDH[0],sizeof(GDH));
return *this
}
}Info
///////////////////////////// cMini.h ////////////////////////
namespace UTANK
{
class cHistory
{
public:
double m_f64X;
double m_f64Y;
double m_f64Z;
};
class cMini
{
public:
int m_32Index;
double m_deeps;
double m_gdh;
std::vector m_Hists;
};
}
///////////////////////////////// Airsituaiton.cpp ///////////////////////
void:: CAirsituation::Addform(CDA* decode)
{
Info* pTrack = new Info;
pTrack -> RSS = decode->m.Track->m_32Index;
pTrack->Deeps[0] = decode->m.Track->m_deeps.GetValue().m_f64D;
pTrack->Deeps[1] = f64V;
pTrack->GDH[0] = decode->m.Track->m_gdh.GetValue().m_f64Az;
int s32size = decode->m.Track.m_Hits.size();
predicted pline;
if(s32Size == 0)
{
for(int i=0; i
{
pline.m_f64X = 0;
pline.m_f64Y = 0;
pline.m_f64Z = 0;
pTrack->Point_ADD.push_back(pline); <------ 에러 추정
}
}
else
{
for(int i=0; i
{
pline.m_f64X = decode->m_Track.m_Hists.at(i).m_f64X;
pline.m_f64Y = decode->m_Track.m_Hists.at(i).m_f64Y;
pline.m_f64Z = decode->m_Track.m_Hists.at(i).m_f64Z;
pTrack->Point_ADD.push_back(pline); <----- 에러 추정
}
}
}
첨부 | 파일 크기 |
---|---|
![]() | 243.4 KB |
댓글 달기