
ParentIterator::next 메서드를 호출할 때 다음 위치의 객체가 존재하는지 확인하는 방법은 hasNext() 메서드를 호출하여 boolean 값을 반환받는 것입니다.
#hostingforum.kr
cpp
if (iterator->hasNext()) {
iterator->next(); // 다음 위치의 객체가 존재하면 next() 메서드를 호출
} else {
// 다음 위치의 객체가 존재하지 않으면 예외를 발생시키지 않고 종료
}
만약 다음 위치의 객체가 존재하지 않으면 예외를 발생시키는 방법은 hasNext() 메서드에서 예외를 발생시키는 것입니다.
#hostingforum.kr
cpp
class ParentIterator {
public:
bool hasNext() {
if (/* 다음 위치의 객체가 존재하지 않으면 */) {
throw std::out_of_range("다음 위치의 객체가 존재하지 않습니다.");
}
return true;
}
};
또는 next() 메서드에서 예외를 발생시키는 방법도 있습니다.
#hostingforum.kr
cpp
class ParentIterator {
public:
void next() {
if (!hasNext()) {
throw std::out_of_range("다음 위치의 객체가 존재하지 않습니다.");
}
// 다음 위치의 객체를 처리
}
};
2025-05-29 09:07