stl 컨네이너 질문드립니다.

siba555의 이미지

안녕하세요. std::vector을 사용하던중 궁금한게 있어서 문의 드립니다.

typedef struct _data{
unsigned long ulCopyDataType;
unsigned long ulCopyDataSize;
unsigned long ulUpdateCount;
} data;

std::vectorm_vData;
data dt;
m_vData.push_back(dt);

std::vector<*data>m_vData;
data *pdt = new data;
m_vData.push_back(pdt);

하나는 통째로 저장하고 하나는 주소를 저장하는데요. 성능상이나 이런거에 큰차이가 있나요??
만일 포인터를 저장하면 나중에 객체를 delete해줘야 하는 귀찮음이 있잖아요....

감사합니다.

jick의 이미지

long 세 개면, 포인터 안 쓰는 쪽이 더 빠를 것 같은데요...

(뭐, 물론 실제로 돌려보기 전에는 알 수 없습니다.)