// Ammo, agar iterator tasodifiy kirish iteratori bo'lsa, - // Ammo, agar iterator tasodifiy kirish iteratori bo'lsa,
- // keyin "(") operatsiya aniqlanadi, bu samarali (doimiy vaqt uchun) imkon beradi.
- // iteratorlar orasidagi masofani hisoblash.
- template
- auto _distance(It from, It to, random_access_iterator_tag)
- {
- return to - from;
- }
- }
- // Tashqi interfeys masofasi, uchinchi parametr yordamida kerakli variantni tanlaydi. template
- auto distance(It from, It to)
- {
- typename iterator_traits::iterator_category tag;
- return implementation::_distance(from, to, tag);
- }
- }
Do'stlaringiz bilan baham: |