iterator_traits
шаблоны (
trait
ағылшын тілінен аударғанда — ортақ си-
паты) анықталған.
template struct iterator_traits{
typedef typename Iter::difference_type difference_type;
typedef typename Iter::value_type value_type;
typedef typename Iter::pointer pointer;
typedef typename Iter::reference reference;
typedef typename Iter::iterator_category
iterator_category;
};
Мысалдағы
typename
түйінді сөзі компилятор
Iter
сөзін типтің
атауы ретінде тануы үшін қажет.
iterator_category
– бұл итератордың
типі, ол итератордың қандай операцияларды қолдайтынын анықтайды.
difference_type
типі екі итератордың арасындағы айырманы өрнектеу
қызметін атқарады.
Тақырыптық файлда келесідей итераторлар типтері сипатталған:
Достарыңызбен бөлісу: |