Программалау оқулық Алматы, 012 Қазақстан Республикасы Білім жəне ғылым министрлігінің «Оқулық»


distance(InputIterator fi rst, InputIterator last)



Pdf көрінісі
бет332/466
Дата20.07.2022
өлшемі3,66 Mb.
#37798
түріПрограмма
1   ...   328   329   330   331   332   333   334   335   ...   466
distance(InputIterator fi rst, InputIterator last); 
Бұл екі итератордың арасындағы айырманы көрсететін 
difference_type
типті мəн қайтарады. Бұл функция кездейсоқ қол жеткізу итераторларынан 
басқа барлық итераторлар үшін 
++
операциясының көмегімен контейнер 
элементтерінің арасындағы қашықтыққа пропорционал уақыт ішінде орында-
лады, яғни ол айтарлықтай ресурс көлемін жұмсайды. 
advance
функциясы да 
осыған ұқсас жұмыс түрін атқарады, ол 
i += n
операциясын жүзеге асыру 
үшін қолданылады:
void advance(InputIterator& i, Distance n); 
Мұндағы 
n
шамасы тек екібағытты жəне кездейсоқ қол жеткізу итератор-
лары үшін теріс мəнді болуы мүмкін. 
К ері итераторлар
Екібағытты жəне кездейсоқ қол жеткізу итераторлары үшін олардың 
итераторлардың адаптерлері деп аталатын түрлері анықталған. Тізбекті кері 
бағытта қарап шығатын адаптер 
reverse_iterator
деп аталады:
template
 
class reverse_iterator : public
 iterator
 
iterator_traits::iterator_category,
 typename 
iterator_traits::value_type,
 typename 
iterator_traits::difference_type,
 typename 
iterator_traits::pointer,


360
 typename 
iterator_traits::reference>{
 protected:
 
It current; 
 public:
typedef It iterator_type;
reverse_iterator();
explicit reverse_iterator(It x);
template reverse_iterator(const 
reverse_iterator& u);
It base() const;
reference operator*() const;


Достарыңызбен бөлісу:
1   ...   328   329   330   331   332   333   334   335   ...   466




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет