게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
안녕하세요. c++ vector 관련 부분
게시물ID : programmer_5267짧은주소 복사하기
작성자 : 달울림
추천 : 0
조회수 : 581회
댓글수 : 6개
등록시간 : 2014/09/03 00:19:01
옵션
  • 베스트금지
  • 본인삭제금지
안녕하세요. 제가 공부중에
벡터를 이용하는 부분은 공부중인데요.

반복해서 벡터를 푸쉬하면서 다른문자열을 넣고 있습니다.

그런데 푸쉬를 하면서 차구 벡터에 새로운 문자열을 받을때마다
벡터0 부터 있던 문자열이 새로운 문자열로 모두 바뀝니다..ㅠㅠ

클래스에 함수 만들어서 쓰는중인데요.


std::vector<char*> m_vecReceiptDetail;

void SetDetail(int nDem, char *szTemp, FILE *fp)
{

int nCnt = 0;
while (nCnt != nDem)
{
GetToken(szTemp, fp);  // 겟토큰은 문자열을받아와서 szTemp 에 문자열을 저장해줍니다.
m_vecReceiptDetail.push_back(szTemp);
nCnt++;
}
}

이런식으로 작업을 하고있는데.
예를들어서

처음 반복문에서는 szTemp = "abcd\0" 가 들어가고
푸쉬를 통해서 vecReceiptDetail[0] = "abcd\0";
들어가는데

반복뒤에 szTemp = "efgh\0" 가 나오면
푸쉬를 통해서 vecReceiptDetail[1] = "efgh\0";
입력됩니다.

근대 문제는 vecReceiptDetail[0]= "abcd\0" 로 뒤에 데이터가 바뀌어버립니다..
문제가 무엇인지 모르겠네요.. 

전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호