Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Показать сообщение отдельно
Hanixer
1 / 1 / 1
Регистрация: 06.11.2013
Сообщений: 31

Итератор класса vector - C++

01.12.2013, 01:56. Просмотров 412. Ответов 1
Метки (Все метки)

Доброго времени суток.
Попалась задача, в которой нужно определить итератор с проверкой выхода за пределы допустимого диапазона для класса vector.
Никак не могу понять
1) как итератор должен узнать о начале вектора,
2) как должна проходить инициализация итератора,
3) как отображать конец вектора?

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
class iterator {
            double* ptr;
            const double* begin;       //нужен ли итератору указатель на первый элемент вектора?
        public:
            iterator(double* d) : beg(d), ptr(d) {}
            iterator(double* base, int n) : beg(base) { if (n<=sz) ptr = base+n; }
            iterator& operator++();
            iterator& operator--();
            double& operator*();
            double& operator[](int);
            iterator& operator+(int);
            iterator& operator-(int);
    };
Помогите кто чем сможет.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.12.2013, 01:56
Готовые ответы и решения для C++ Итератор класса vector:

Итератор в <vector>
Всем привет! Помогите пожалуйста советом. У меня есть вектор, содержащий...

Как корректно скопировать vector в vector внутри класса
Есть класс принимающий в конструкторе vector: class test { ...

Итератор для шаблонного класса
Всем солнца! Честно честно честно пересмотрел более 100 различных вариантов...

Итератор для класса-группы
Доброго времени суток. Нужна помощь. Выполняя лабы по методичке вновь возникла...

Метод класса возвращающий итератор
Не могу заставить метод класса возвращать итератор, помогите понять почему...

Итератор для класса с массивом
Добрый день! Есть небольшая задачка.. необходимо написать класс для готовых...

1
Итератор класса vector C++   Следующее сообщение темы 
Другие темы раздела
C++ Создание стека - код не компилируется http://www.cyberforum.ru/cpp-beginners/thread1024528.html
Пытаюсь разобраться с динамическими структурами данных. Списал код, но не компилируется #pragma hdrstop #pragma argsused #include <tchar.h> #include <iostream.h> void main() { struct Stek
C++ Ошибся в цикле for Я хотел что бы программа выдала все числа от 0 до 9 включительно с шагом 0.1, программа не выдаёт ошибки но шаг делает всё равно 1. Где я ошибся? #include <iostream> using namespace std; int... http://www.cyberforum.ru/cpp-beginners/thread1024517.html
C++ после цикла while символьный массив обнуляется?
Собственно сабж. Подскажите, в чем проблема int RemoveChar(char *_str, int _strt, int _amt) { int i = 0; #ifdef CHECKING while(*_str++) i++; <- После цикла массив пустой if(i...
C++ Написать функцию, которая рекурсивно вычисляет сумму чисел в заданном диапазоне
Написать функцию, которая рекурсивно вычисляет сумму чисел в заданном диапазоне.
C++ Обработка матриц http://www.cyberforum.ru/cpp-beginners/thread1024465.html
Имеется код! void maxToArr(int ar,int matr, int nRow, int nCol){ int max=matr; for(int i=0;i<nRow;i++) for(int j=0; j<nCol; j++) if(max<matr){ ...
C++ Обращение к элементам массива используя указатель Необходимо написать программу, выделив под массив динамически память. Обращаться к элементам массива необходимо используя указатель. #include <iostream> void main() { setlocale(LC_ALL,... подробнее
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru