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

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

Войти
Регистрация
Восстановить пароль
 
tokar2
25 / 25 / 1
Регистрация: 09.11.2012
Сообщений: 229
#1

перегрузка [] - C++

10.01.2013, 20:53. Просмотров 243. Ответов 2
Метки нет (Все метки)

Есть класс, и почему компилятор выдает ошибку на функции
C++
1
 int &operator[](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
#ifndef ARRAY1_H
#define ARRAY1_H
 
#include <iostream.h>
 
class Array{
      
      friend ostream &operator<<(ostream &, Array &);
      friend istream &operator>>(istream &, Array &);
public:
       Array(int =10);
       Array(const Array &);
       ~Array();
       int getSize() const;
       const Array &operator=(const Array &);
       
       int operator==(const Array &) const;
       int operator!=(const Array &) const;
       
       int &operator[](int);
       static int getArrayCount();
       
private:
        int *ptr;
        
        int size;
        static int arrayCount;
        
};
 
#endif
Вот сама функция
C++
1
2
3
4
5
6
int Array::operator[](int subscript)
{
    assert(0<=subscript && subscript < size);
    
    return ptr[subscript];
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.01.2013, 20:53     перегрузка []
Посмотрите здесь:

Перегрузка +,-,++,-- - C++
Задание примерно такое: Создать класс линейного списка List. С помощью перегруженных операций реализовать: 1) переместиться в...

перегрузка - C++
1 С помощью механизма перегрузки функций реализовать функции для нахождения суммы: 1) двух чисел (результат – число); 2) двух строк...

перегрузка [] - C++
Здравствуйте! код из учебного пособия. (возможно немного не рабочий) текст перед кодом- &quot;Пусть класс определен как строка символов....

C++ Перегрузка - C++
Добрый вечер,очень прошу мне помочь,уже 2 часа читаю методичку и всё без результатов,нужно перегрузить функцию min_el поиска минимального...

Перегрузка - C++
даны две перегрузки: 1. постфиксная для ++ чтобы прибавить 1 к height и к width Rectang &amp; operator ++(int) {height++; width++; ...

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

перегрузка в с++ - C++
Помогите нужно очень срочно!недавно писал о перегрузке есть перегрузка постфиксного инкремента Rectang &amp; operator ++(int) ...

перегрузка - C++
а чем отличаются перегрузка как метод и как функция?

Перегрузка в c++ - C++
Собственно для чего нужна перегрузка функций или операторов ?

перегрузка >> и << - C++
Решил попробовать перегрузить операции ввода и вывода,почему то выводятся 0, вместо нужных значений,подскажите в чем косяк #include...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Jupiter
Каратель
Эксперт С++
6553 / 3973 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
10.01.2013, 21:02     перегрузка [] #2
Цитата Сообщение от tokar2 Посмотреть сообщение
int &operator[](int);
Цитата Сообщение от tokar2 Посмотреть сообщение
int Array::operator[](int subscript)
возвращаемый тип разный
Toshkarik
1140 / 857 / 51
Регистрация: 03.08.2011
Сообщений: 2,384
Завершенные тесты: 1
10.01.2013, 21:02     перегрузка [] #3
C++
1
2
3
4
5
6
int &Array::operator[](int subscript)
{
    assert(0<=subscript && subscript < size);
    
    return ptr[subscript];
}
Ответ Создать тему
Опции темы

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