vector를 처음 접하는 유저라면 임의의 요소를 삭제하는일이 그렇게 쉽지많은 않을것이다(나만 그런가 ㅡㅡ)
아래와 같이 코드를 구현하면 되는데 방법은 간단히 설명하면 iterator 를 이용하여 erase 하면서 erase 함수가 해당 요소를 지우고 다음
값을 iterator 값으로 넘겨 준다. 이것을 받아서 연산을 계속 진행하면 된다.
typedef vector<int> tvec_Integer;
tvec_Integer vecInt;
.
.
tvec_Integer::iterator iteInt;
iteInt = vecInt.begin();
while(iteInt != vecInt.end())
{
//임의 요소 5값을 가진것을 삭제 한다면..
int nTemp = *iteInt;
if(nTemp == 5)
iteInt = vecInt.erase(iteInt);
else
iteInt++;
}
아래와 같이 코드를 구현하면 되는데 방법은 간단히 설명하면 iterator 를 이용하여 erase 하면서 erase 함수가 해당 요소를 지우고 다음
값을 iterator 값으로 넘겨 준다. 이것을 받아서 연산을 계속 진행하면 된다.
typedef vector<int> tvec_Integer;
tvec_Integer vecInt;
.
.
tvec_Integer::iterator iteInt;
iteInt = vecInt.begin();
while(iteInt != vecInt.end())
{
//임의 요소 5값을 가진것을 삭제 한다면..
int nTemp = *iteInt;
if(nTemp == 5)
iteInt = vecInt.erase(iteInt);
else
iteInt++;
}
댓글 없음:
댓글 쓰기