[완료] stl::vector 에서 n번째 element의 지우기는 어떻게?
글쓴이: kleinstein / 작성시간: 목, 2007/09/06 - 10:17오후
std::vector<myclass> myvector;
위의 myvector가 어느정도 채워져있을때요..
여기서 myvector 의 n번째 element 를 지우려면 어떻게 하나요?
myvector.erase();
처럼 erase 함수를 쓰려면 n번째 element를 가리키는 iterator 가 필요한데요..
n번째 element를 가리키는 iterator는 어떻게 얻죠???
Forums:
vector::iterator는 random access iterator라는 것을 생각하십시오
[예진아씨 피카사 웹앨범] 임예진 팬클럽 ♡예진아씨♡ http://cafe.daum.net/imyejin
아직 잘 이해가 안가는데요..
죄송합니다만.. vector::iterator는 random access iterator라는게 무슨 말이신지??
제가 드린 질문에 어떤 연관이 있는지 제가 좀 둔해서 그런지 잘 모르겠습니다.
랜덤접근이
랜덤접근이 가능하므로, vector::begin()+n 과 같은 방식으로 n번째 요소에 대한 반복자를 얻을수있습니다.
이견입니다만 n
이견입니다만 n 번째라 함은
myvector.erase( myvector.begin() + n - 1 );
로 되어야 제대로 될 것 같습니다.
( ㅠ_ㅠ 딴지는 아니에용 ~ )
Neogeo - Future is Now.
Neogeo - Future is Now.
저도
저도 이견입니다만
n이 0부터 시작한다고 보면
myvector.erase( myvector.begin() + n );
로 해야 될 것 같습니다.
이쪽이 C/C++의 첨자 규칙과도 일치하고요.
저도 딴지 아닙니다. :-)
감사합니다.
생각보다 간단한건데.. 역시 기본이 중요하네요..
댓글 달기