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

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

Войти
Регистрация
Восстановить пароль
 
Iworb
анимешник++
93 / 60 / 2
Регистрация: 03.11.2009
Сообщений: 413
#1

Переопределение == - C++

17.12.2010, 23:00. Просмотров 519. Ответов 0

Кто сталкивался с такой проблемой:
Переопределяем операцию == для шаблонного класса вектора
в классе описана:
C++
1
int operator==(vector &left, vector &right)
и ниже переопределена
C++
1
2
3
4
5
6
7
8
9
template<class T>
int operator==(vector<T> &left, vector &right)
{
    if(left.n!=right.n) return 0;
    int i;
    for(i=0;i<left.n;i++)
        if(left.in[i]!=right.in[i]) return 0;
    return 1;
}
ругается, что оператор В КЛАССЕ должен быть описан с одним вектором внутри.
Когда убираю второй вектор из описания функции в классе и из описания функции вне класса
C++
1
2
3
4
5
6
7
8
9
10
11
int operator==(vector &left)
//.........
template<class T>
int operator==(vector<T> &left)
{
    if(left.n!=n) return 0;
    int i;
    for(i=0;i<left.n;i++)
        if(left.in[i]!=in[i]) return 0;
    return 1;
}
то пишет, что описание вне функции должно иметь 2 вектора.
Когда делаю в классе с одним вектором, а вне его с 2мя ессно ошибка.
Помогите пожалуйста.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.12.2010, 23:00
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Переопределение == (C++):

переопределение - C++
Необходимо реализовать класс Stack, соответствующий стеку чисел. Для хранения стека внутри класса используется массив. Размер массива...

Переопределение массива - C++
Как переопределить массив в С++ с сохранением старых значений? Код навроде такого int Size = 1; int i = 0; int Array* = new...

Перегрузка\переопределение - C++
перегрузка и переопределение стандартных операторов в классе это одно и то же или нет?

Переопределение методов - C++
Как вызвать переопределенный (не перегруженный) метод из производного класса? Base* obj_1 = new Der1; ...

Переопределение оператора - C++
У меня есть класс вектора. Надо переопределить оператор умножения числа на вектор. class myvector { private: int x,y,z; public:...

Переопределение operator [][] - C++
Пишу свой класс матрица. Необходимо получать доступ к элементу матрицы. Пробую переопределить оператор обычным образом, но не ...

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.12.2010, 23:00
Привет! Вот еще темы с ответами:

Переопределение операций - C++
Здравствуйте, необходимо осуществить переопределение операции сложения, не понимаю как применять на практике переопределение, заранее...

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

Переопределение типа - C++
В windows.h все типы имеют переопределения вида LONG, UCHAR и так далее. Понятно, что это обычные типы long и unsigned char, но вот в чем...

переопределение operator[] - C++
я унаследовался вот так: template &lt;class TKey, class TData&gt; class fixedSizeCache: public std::map&lt;TKey, stCache&lt;TData&gt;&gt; { ...


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

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