Doxygen
DualDirIterator< C, I > 模板类 参考

helper class representing an iterator that can iterate forwards or backwards 更多...

Public 成员函数

 DualDirIterator (C &container, bool fwd)
 
void operator++ ()
 
I & operator* ()
 
bool atEnd ()
 

Private 属性

C & m_container
 
bool m_forward
 
C::iterator m_it
 
C::reverse_iterator m_rit
 

详细描述

template<class C, class I>
class DualDirIterator< C, I >

helper class representing an iterator that can iterate forwards or backwards

在文件 diagram.cpp535 行定义.

构造及析构函数说明

◆ DualDirIterator()

template<class C , class I >
DualDirIterator< C, I >::DualDirIterator ( C &  container,
bool  fwd 
)
inline

在文件 diagram.cpp538 行定义.

539  : m_container(container), m_forward(fwd)
540  {
541  if (fwd) m_it = container.begin();
542  else m_rit = container.rbegin();
543  }

引用了 DualDirIterator< C, I >::m_it , 以及 DualDirIterator< C, I >::m_rit.

成员函数说明

◆ atEnd()

template<class C , class I >
bool DualDirIterator< C, I >::atEnd ( )
inline

在文件 diagram.cpp553 行定义.

554  {
555  if (m_forward)
556  return m_it==m_container.end();
557  else
558  return m_rit==m_container.rend();
559  }

引用了 DualDirIterator< C, I >::m_container, DualDirIterator< C, I >::m_forward, DualDirIterator< C, I >::m_it , 以及 DualDirIterator< C, I >::m_rit.

被这些函数引用 TreeDiagram::drawBoxes().

◆ operator*()

template<class C , class I >
I& DualDirIterator< C, I >::operator* ( )
inline

在文件 diagram.cpp548 行定义.

549  {
550  return m_forward ? *m_it : *m_rit;
551  }

引用了 DualDirIterator< C, I >::m_forward, DualDirIterator< C, I >::m_it , 以及 DualDirIterator< C, I >::m_rit.

◆ operator++()

template<class C , class I >
void DualDirIterator< C, I >::operator++ ( )
inline

在文件 diagram.cpp544 行定义.

545  {
546  if (m_forward) ++m_it++; else ++m_rit;
547  }

引用了 DualDirIterator< C, I >::m_forward, DualDirIterator< C, I >::m_it , 以及 DualDirIterator< C, I >::m_rit.

类成员变量说明

◆ m_container

template<class C , class I >
C& DualDirIterator< C, I >::m_container
private

在文件 diagram.cpp562 行定义.

被这些函数引用 DualDirIterator< C, I >::atEnd().

◆ m_forward

template<class C , class I >
bool DualDirIterator< C, I >::m_forward
private

◆ m_it

template<class C , class I >
C::iterator DualDirIterator< C, I >::m_it
private

◆ m_rit

template<class C , class I >
C::reverse_iterator DualDirIterator< C, I >::m_rit
private

该类的文档由以下文件生成:
DualDirIterator::m_it
C::iterator m_it
Definition: diagram.cpp:564
DualDirIterator::m_container
C & m_container
Definition: diagram.cpp:562
DualDirIterator::m_rit
C::reverse_iterator m_rit
Definition: diagram.cpp:565
DualDirIterator::m_forward
bool m_forward
Definition: diagram.cpp:563