
DsSequence::remove 함수는 삭제된 요소의 이전 위치를 반환하는 이유는, 이 함수가 삭제된 요소를 바로 반환하기 때문입니다.
DsSequence::remove 함수는 삭제된 요소의 이전 위치를 반환하는 것이 아니라, 삭제된 요소 자체를 반환합니다.
따라서, 삭제된 요소의 이전 위치를 얻으려면, 삭제된 요소를 반환받은 후, 이전 위치를 계산해야 합니다.
예를 들어, 다음 코드는 삭제된 요소의 이전 위치를 반환받는 방법을 보여줍니다.
#hostingforum.kr
cpp
DsSequence* seq = new DsSequence();
seq->add(1);
seq->add(2);
seq->add(3);
int pos = seq->indexOf(2);
seq->remove(pos); // 삭제된 요소의 이전 위치를 반환받지 않습니다.
int prevPos = pos - 1; // 삭제된 요소의 이전 위치를 계산합니다.
// prevPos는 0이 됩니다.
이러한 디자인 선택은 DsSequence::remove 함수의 사용법을 단순화하고, 개발자가 이전 위치를 계산할 필요성을 줄이기 위한 것입니다.
2025-06-25 14:26