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

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

Восстановить пароль Регистрация
 
azbest
 Аватар для azbest
36 / 36 / 7
Регистрация: 12.03.2013
Сообщений: 141
01.06.2014, 17:29     Перегрузка оператора == и др #1
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
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.06.2014, 17:29     Перегрузка оператора == и др
Посмотрите здесь:

Перегрузка оператора C++
перегрузка оператора = C++
C++ Перегрузка оператора <<
Перегрузка оператора << C++
C++ Перегрузка оператора + и =
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
0x10
2425 / 1597 / 232
Регистрация: 24.11.2012
Сообщений: 3,919
01.06.2014, 17:43     Перегрузка оператора == и др #2
Во-первых, подозреваю, что версия билдера какая-нибудь древняя, покрытая плесенью.
Во-вторых, по этим кускам кода невозможно даже прежположить где именно он ожидает круглой скобки.
azbest
 Аватар для azbest
36 / 36 / 7
Регистрация: 12.03.2013
Сообщений: 141
01.06.2014, 18:01  [ТС]     Перегрузка оператора == и др #3
Билдер RAD Studio XE6

ошибку выдает в строке
C++
1
bool operator==(const poly тут курсор & left, const poly& right) {
Добавлено через 14 минут
ссылка на весь заголовочный файл на GitHub
0x10
2425 / 1597 / 232
Регистрация: 24.11.2012
Сообщений: 3,919
01.06.2014, 18:06     Перегрузка оператора == и др #4
Сообщение было отмечено автором темы, экспертом или модератором как ответ
От фонаря: предлагаю переименовать класс poly и посмотреть что будет.
Вдруг конфликтует с чем-нибудь билдеровским.
azbest
 Аватар для azbest
36 / 36 / 7
Регистрация: 12.03.2013
Сообщений: 141
01.06.2014, 18:12  [ТС]     Перегрузка оператора == и др #5
Ну что же я в шоке))) но наверное был конфликт. После переименования в polynom скомпилилось.
TrueBit
 Аватар для TrueBit
95 / 95 / 12
Регистрация: 19.11.2012
Сообщений: 195
01.06.2014, 18:15     Перегрузка оператора == и др #6
Можно еще попробовать заключить в пространство имен:

C++
1
2
3
namespace myname {
   // тут сам класc
}
обращаться так:
C++
1
myname::poly
Yandex
Объявления
01.06.2014, 18:15     Перегрузка оператора == и др
Ответ Создать тему
Опции темы

Текущее время: 03:03. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru