Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
nick95nick
0 / 0 / 0
Регистрация: 28.04.2012
Сообщений: 18
#1

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

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

Есть класс 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; }
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.05.2014, 21:10     Проверить правильность работы итератора
Посмотрите здесь:

Проверить на правильность работы программы - C++
Определить, принадлежит ли точка с координатами (x1,y1) кругу радиуса с центром в точке (a,b). #include &lt;iostream&gt; #include &lt;stdio.h&gt; ...

Проверить код на правильность - C++
Ребят написала код но не уверена что правильно.К сожалению Как проверить не знаю. проверьте пожалуйста заранее благодарю! #include...

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

Проверить код на правильность - C++
Здравствуйте! Помогите пожалуйста проверить код на правильность,т.к. почему-то не компилируется. Задача: Известно кол-во очков, набранных...

Проверить правильность написания сочетаний «жи», «ши», «ча», «ща» - C++
Последовательностью слов задана строка. Проверить правильность написания сочетаний «жи», «ши», «ча», «ща», «чу» и «щу». Если надо, то...

Проверить правильность построения цикла - C++
Подскажите правильно ли построен цикл ? И может ли в одном цикле быть две переменных for(double...

Проверить правильность арифметического выражения - C++
С++ Проверить правильность арифметического выражения, состоящего из числовых констант, знаков арифметических действий и скобок () и .

Проверить массив на правильность ввода - C++
Вроде бы были похожие темы, но так как я тупой, то не смог подобрать подходящего решения. Задача такова: хочу заполнить массив с...

Проверить правильность вычисления по формулам - C++
Правильно я записал формулы? Вернее я точно знаю что нет, где ошибка?)) { u=sqrt(sqrt((-q/2)+sqrt(d))); ...

Проверить правильность написания чисел в тексте - C++
Проверить правильность написания чисел в тексте. Встретившиеся в начале числе незначащие нули опустить. Исправленный текст напечатать.


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru