
	                	                 
EmptyIterator::current() 메서드는 현재 Iterator가 비어있을 때 예외를 발생시켜야 합니다. 예를 들어, std::out_of_range 예외를 발생시켜 Iterator가 비어있는 상태를 명시적으로 표현할 수 있습니다. 
예시:
#hostingforum.kr
cpp
class EmptyIterator {
public:
    struct iterator {
        iterator() = default;
        ~iterator() = default;
        iterator(const iterator&) = default;
        iterator& operator=(const iterator&) = default;
        // 비어있는 Iterator일 때 예외를 발생시킵니다.
        T& current() {
            throw std::out_of_range("Iterator is empty");
        }
    };
    iterator begin() { return iterator(); }
    iterator end() { return iterator(); }
};
이러한 구현 방식은 Iterator가 비어있는 상태를 명시적으로 표현할 수 있도록 해주며, 사용자에게 Iterator의 상태를 알 수 있도록 합니다.
2025-07-17 13:25