Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 28.04.2012
Сообщений: 18
1

Проверить правильность работы итератора

28.05.2014, 21:10. Показов 570. Ответов 0
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Есть класс Iterator, в котором в свою очередь есть несколько других итераторов. Двое из них должны выводить первое и последнее вхождение символа в строку (Upper_bound,Lower_bound) . Есть подозрение, что они написаны неверно. Есть ли ошибки?

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
template<class Item>
class Iterator
{
  private:
    MultiSet<Item>& Bag;
    size_t index;
  public:
    typedef Iterator<Item> iterator;
    typedef size_t size_t;
    Iterator(MultiSet<Item>& ms, size_t idx = 0)
      : Bag(ms), index(idx) {}
    ~iterator() { }
    iterator find(const Item& target)
    {
       iterator it(Bag);
       for (it = Bag.begin(); it != Bag.end() && *it != target; it++);
       return it;
    }
    iterator lower_bound(const Item& target)
    {
      iterator it(Bag);
      for (it = Bag.end(); it != Bag.begin() && *it > target; --it);
      return it;
    }
    iterator upper_bound(const Item& target)
    {
      iterator it(Bag);
      for (it = Bag.begin(); it != Bag.end() && *it <= target; ++it);
      return it;
    }
    Item& operator *() { return Bag[index]; }
    size_t operator ==(iterator& it){ return index == it.index; }
    size_t operator !=(iterator& it) { return index != it.index; }
    iterator operator =(iterator& it){ index = it.index; return *this; }
    iterator& operator++() { ++index; return *this; }
    iterator& operator--() { --index; return *this; }
    iterator operator++(int) { iterator clone(*this); ++index; return clone; }
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.05.2014, 21:10
Ответы с готовыми решениями:

Проверить на правильность работы программы
Определить, принадлежит ли точка с координатами (x1,y1) кругу радиуса с центром в точке (a,b)....

Создание структуры итератора для работы с файлом
Всем здравствуйте! Пытаюсь создать итератор, чтоб выводить бинарные данные с файла. По моей идее,...

Проверить код на правильность
Здравствуйте! Помогите пожалуйста проверить код на правильность,т.к. почему-то не компилируется....

Проверить правильность ввода
cin &gt;&gt; RMB_MAX; if (RMB_MAX &lt; 0) { RMB_MAX = 0; } else if (RMB_MAX &gt; 100) { RMB_MAX = 100;...

0
28.05.2014, 21:10
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.05.2014, 21:10
Помогаю со студенческими работами здесь

Проверить код на правильность
Ребят написала код но не уверена что правильно.К сожалению Как проверить не знаю. проверьте...

Проверить правильность задания №2
Дано трехзначное число N. Проверить, будет ли сумма его цифр четным числом. #include &quot;stdafx.h&quot;...

Проверить правильность кода
#include &quot;stdafx.h&quot; #include &lt;iostream&gt; // новый стандарт - хидеры не имеют расширения using...

Проверить программу на правильность
Задание: Ввести последовательность чисел (окончание ввода – 0) и вывести их в обратном порядке c...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru