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

Перегрузка оператора индексации в списке - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ (void) в макросе define http://www.cyberforum.ru/cpp-beginners/thread863459.html
Добрый день! Разбираюсь со строкой: #define lua_readline(L,b,p) \ ((void)L, fputs(p, stdout), fflush(stdout), /* show prompt */ \ fgets(b, LUA_MAXINPUT, stdin) != NULL) /* get line */ Что делает: (void)L? Только для того, что бы не было warning-ов при компиляции? Или при определении макросов, у данной строчки другая цель? Спасибо!
C++ Игра Угадай Слово ошибка в коде Здравствуйте,проблема в том, что программа работает не корректно. А именно в начале программы при вводе "да" игра закрывается, хотя наоборот должна начаться. Помогите пожалуйста. Собственно вот код : #include <iostream> #include <string> #include <cstdlib> #include <ctime> #include <cctype> using std::string; const int NUM = 20; const string wordlist = {"àðáóç", "áàáóøêà", "âîðîáåé", ... http://www.cyberforum.ru/cpp-beginners/thread863424.html
C++ создать программу для сравнения алгоритмов сортировки
создать программу для сравнения алгоритмов сортировки (Выбором и Пузырьком)т.е. чтоб выдавал время построения массива.Помогите очень нужно.Желательно с объяснением.
Сравнить n-чисел и найти максимальное и минимальное значение, не прибегая к if C++
Надо сравнить n-чисел и найти максимальное и минимальное значение, не прибегая к ужасным разветлению оператора if?
C++ Рекурсивная структура http://www.cyberforum.ru/cpp-beginners/thread863390.html
Добрый день! Стоит задача написать односвязный список. Как все работает в общем я представляю, а конкретно я понимаю это так: имеем общую структуру элемента: struct List { int item; List *Next; };
C++ Сортировка Шелла Добрый день! Как сделать сортировку методом Шелла, если у меня числа в массив можно ввести и с клавиатуры и случайные числа. В массиве 100 элементов. register int i, j, gap, k; char x, a; a=9; a=5; a=3; a=2; a=1; for(k=0; k < 5; k++) { подробнее

Показать сообщение отдельно
mappy89
2 / 2 / 0
Регистрация: 16.10.2011
Сообщений: 178
13.05.2013, 15:11     Перегрузка оператора индексации в списке
Доброго времени суток.

Имеется список, внутри которого соответственно структура, имеющая элемент данных int и две ссылки вперед/назад

Каким образом нужно перегрузить оператор индексации [] для того, чтобы можно было напрямую использовать на выходе тип данных int и работать с ним?

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
39
40
41
42
class container
{    
   friend ostream &operator<<(ostream &o, container &cont){o<<cont.ink.tem; o<<std::endl;}
      
    public:   
    struct link
    {
        int item;
        link *prev;
        link *next;
        link(int value, link *pr=NULL, link *ne=NULL){item=value,prev=pr,next=ne;}
    };
   
    int counter;
    
    link *first;
    link *last;
 
    int &operator[](int); 
 
...
};
 
int& container::operator[](int count)
{
    link *mylink=first;
    
    for (int i=0; i<count; i++)
    mylink=mylink->next;
    
    return mylink->item;
} 
 
...
 
main()
{
container *tt=new container();
    tt->add_item(45); 
    tt->add_item(1);
 
cout<<tt[1];
Компилятор выдаёт: Invalid use of struct container::link. Как правильно перегрузить оператор []/<<, заранее спасибо
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 05:30. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru