Giriş
5 tane iterator kategorisi var. Bunlar
1. input_iterator_tag - InputIterator yazısına bakınız.
2. output_iterator_tag - Output Iterator yazısına bakınız.
3. forward_iterator_tag - Bu yazı
4. bidirectional_iterator_tag,
5. random_access_iterator_tag - RandomAccessIterator yazısına bakınız.
forward_iterator_tag,bidirectional_iterator_tag ve random_access_iterator_tag yapıları aynı zamanda output_iterator_tag'den kalıtır.
Açıklaması şöyle
İmzası şöyledir
İmzası şöyledir
İmzası şöyledir
İmzası şöyledir
5 tane iterator kategorisi var. Bunlar
1. input_iterator_tag - InputIterator yazısına bakınız.
2. output_iterator_tag - Output Iterator yazısına bakınız.
3. forward_iterator_tag - Bu yazı
4. bidirectional_iterator_tag,
5. random_access_iterator_tag - RandomAccessIterator yazısına bakınız.
forward_iterator_tag,bidirectional_iterator_tag ve random_access_iterator_tag yapıları aynı zamanda output_iterator_tag'den kalıtır.
Açıklaması şöyle
Forward iterators have the "Multipass guarantee", allowing repeated dereference of copies of iterators, yielding the same result.
Tanımlama
Şöyle yaparız.struct iterator : std::iterator<std::forward_iterator_tag, T> {...}
operator * metoduİmzası şöyledir
T& operator*() const;
operator ++ metodu
İmzası şöyledir
iterator& operator++() {
...
return *this;
}
operator == metoduİmzası şöyledir
bool operator==(const iterator& r) const;
operator != metodu İmzası şöyledir
bool operator!=(const iterator& r) const;
Hiç yorum yok:
Yorum Gönder