42 / 42 / 18
Регистрация: 12.03.2013
Сообщений: 148
1

Перегрузка оператора == и др

01.06.2014, 17:29. Показов 1047. Ответов 5
Метки нет (Все метки)

C++ Builder ругаеться на перегрузку операторов. На mingw32-g++ все компилилось нормально.
Пример пергрузки взял с хабра


описание оператора
C++
1
2
3
4
5
6
7
8
class poly {
.................
public:
    .........
    friend bool operator==(const poly& left, const poly& right);
    .........
 
};
реализация
C++
1
2
3
bool operator==(const poly& left, const poly& right) {
    return (left.p == right.p);
}
p -- это вектор.

на это билдер выдает ошибку
[bcc32 Error] ChainFrac.h(385): E2293 ) expected
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
01.06.2014, 17:29
Ответы с готовыми решениями:

Перегрузка оператора ^
Здравствуйте! Необходимо перегрузить бинарный оператор ^ для транспонирования матрицы. Есть класс...

Перегрузка оператора +
Написал для перегрузки оператора + class BoolMatrix { private: int feet; public:...

перегрузка оператора!
Помогите сложить диагонали , при помоши перегрузки оператора+, чтобы можно было написать в maine:...

Перегрузка оператора +
Добрый день)Почему то не работает перегрузка оператора сложения) #include <iostream> #include...

5
3254 / 2056 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
01.06.2014, 17:43 2
Во-первых, подозреваю, что версия билдера какая-нибудь древняя, покрытая плесенью.
Во-вторых, по этим кускам кода невозможно даже прежположить где именно он ожидает круглой скобки.
0
42 / 42 / 18
Регистрация: 12.03.2013
Сообщений: 148
01.06.2014, 18:01  [ТС] 3
Билдер RAD Studio XE6

ошибку выдает в строке
C++
1
bool operator==(const poly тут курсор & left, const poly& right) {
Добавлено через 14 минут
ссылка на весь заголовочный файл на GitHub
0
3254 / 2056 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
01.06.2014, 18:06 4
Лучший ответ Сообщение было отмечено azbest как решение

Решение

От фонаря: предлагаю переименовать класс poly и посмотреть что будет.
Вдруг конфликтует с чем-нибудь билдеровским.
1
42 / 42 / 18
Регистрация: 12.03.2013
Сообщений: 148
01.06.2014, 18:12  [ТС] 5
Ну что же я в шоке))) но наверное был конфликт. После переименования в polynom скомпилилось.
0
99 / 99 / 47
Регистрация: 19.11.2012
Сообщений: 195
01.06.2014, 18:15 6
Можно еще попробовать заключить в пространство имен:

C++
1
2
3
namespace myname {
   // тут сам класc
}
обращаться так:
C++
1
myname::poly
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
01.06.2014, 18:15
Помогаю со студенческими работами здесь

Перегрузка оператора +
не получается в своем классе перегрузить оператор + :( пишет "error C2804: бинарный "operator +"...

Перегрузка оператора
#include <cstring> #include <iostream> #include <ctime> #include <cstdlib> using namespace std;...

Перегрузка оператора new[]
Привет всем, программирую давольно давно, на с++ второй год. Столкнулся с задачей, в которой нужно...

Перегрузка оператора >
Добрый день! #include <stdio.h> #include <tchar.h> #include <iostream> template <typename...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru