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

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

Войти
Регистрация
Восстановить пароль
 
Mee
14 / 14 / 1
Регистрация: 05.07.2010
Сообщений: 88
#1

Оператор индексирования как утилита - C++

14.02.2011, 18:31. Просмотров 813. Ответов 3
Метки нет (Все метки)

Нужно сделать оператор индексирования (operator[]) утилитой, тоесть вне класа. Не знаю зачем пока, но сделать надо.
Можете мне объяснить как он правильно принимает параметры? И нужно ли делать модификатор-селектор отдельный, для того, что бы его использовала утилита, если допустим клас наш выглядит вот так
C++
1
2
3
4
5
class IndexedVarVector
{
private:
    size_t _n;
    double * _v;
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.02.2011, 18:31     Оператор индексирования как утилита
Посмотрите здесь:

Оператор индексирования [] С++ - C++
Я перегрузил оператор индексирования таким образом: float* operator (unsigned int i){return arr;} я не уверен в том что я корректно...

Односвязный список и оператор индексирования [] - C++
Помогите разобраться, как сделать оператор доступа по индексу для односвязного спика. Объявление: class TMyObject() { }; ...

перегрузка индексирования - C++
на пример как перегрузить оператор индексирования с 2-мя параметрами: f

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

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

Перегрузка оператора индексирования - C++
Что-то не выходит каменный цветок. Определение класса: struct TEventData { char strComputerName; }; class TEventDataSet { ...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
silent_1991
Эксперт С++
4960 / 3036 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
14.02.2011, 18:42     Оператор индексирования как утилита #2
Mee, что вы под термином "утилита" подразумеваете? В смысле надо перегрузить оператор взятия индекса не как метод класса? В таком случае нужно использовать функцию-друга. В остальном перегружается аналогично методу.

Добавлено через 3 минуты
Ах ты чёрт, нет, не получится вне класса перегрузить... operator[] должен быть членом класса обязательно...
Mee
14 / 14 / 1
Регистрация: 05.07.2010
Сообщений: 88
14.02.2011, 19:01  [ТС]     Оператор индексирования как утилита #3
я тоже так думал, но на паре возник спор с преподавателем и он задал задание реализовать как утилиту
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.02.2011, 19:06     Оператор индексирования как утилита
Еще ссылки по теме:

Перегрузка оператора индексирования - C++
Всем привет! Ситуация такая - есть 2 класса, поле одного класса является массивом из элементов второго класса. Необходимо переопределить...

Аналог перегрузки оператора индексирования (operator []) - C++
Как по-другому(то есть в виде обычной функции или как то ещё) можно записать перегрузку оператора индексирования? Например в моём случае:...

Перегрузка операции индексирования, вопрос по синтаксису - C++
Здравствуйте форумчане. Должна сразу сказать, что в своей практике с С++ сталкивалась мало, поэтому в нем считаю себя новичком. Но все же...

Составить программу индексирования массива из N целых чисел с++ - C++
Составить программу индексирования массива из N целых чисел в порядке возрастания значений без фактического перемещения элементов массива в...


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

Или воспользуйтесь поиском по форуму:
silent_1991
Эксперт С++
4960 / 3036 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
14.02.2011, 19:06     Оператор индексирования как утилита #4
Mee, это не вы так думали, это так и есть. Есть группа операторов, перегруженная версия которых обязательно должна быть методом класса, и оператор индексации в их число входит.
Yandex
Объявления
14.02.2011, 19:06     Оператор индексирования как утилита
Ответ Создать тему
Опции темы

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