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

перегрузка операторов - C++

Восстановить пароль Регистрация
 
RASHFor
6 / 6 / 0
Регистрация: 12.02.2012
Сообщений: 224
03.09.2012, 22:59     перегрузка операторов #1
Товарисссчи, что значит запись:
C++
1
CVector2D::operator+(CVector2D const& v1)const
файл *срр
и чем отличается от
C++
1
CVector2D const operator +(CVector2D const& vector2)const;
?

В первом случае это уже непосредственно инициализация?
А второй случай описание функциии в классе?(перегружаем оператор operator+ и вызываем его как метод ?(1й код)

Добавлено через 6 минут
и если можно написать так:
C++
1
CVector2D a(3.0, 5.8);
зачем двоеточия использовать ведь наглядннее - CVector2D a(3.0, 5.8);?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.09.2012, 22:59     перегрузка операторов
Посмотрите здесь:

перегрузка операторов C++
C++ перегрузка операторов
C++ Перегрузка операторов
Перегрузка операторов C++
C++ Перегрузка операторов
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Andsteadur
152 / 136 / 3
Регистрация: 23.05.2009
Сообщений: 275
03.09.2012, 23:01     перегрузка операторов #2
C++
1
CVector2D const operator +(CVector2D const& vector2)const;
вот это находится я так понимаю в описании класса? Значит это объявление перегрузки оператора в качестве члена класса.

А это
C++
1
2
CVector2D::operator+(CVector2D const& v1)const
{}
непосредственно реализация метода, объявленного в классе.
OhMyGodSoLong
~ Эврика! ~
 Аватар для OhMyGodSoLong
1234 / 983 / 42
Регистрация: 24.07.2012
Сообщений: 2,002
03.09.2012, 23:07     перегрузка операторов #3
Первый — это бинарное сложение, второй — это унарный плюс.
RASHFor
6 / 6 / 0
Регистрация: 12.02.2012
Сообщений: 224
03.09.2012, 23:52  [ТС]     перегрузка операторов #4
тут всё бинарное сложение...как бэ..
PSIAlt
 Аватар для PSIAlt
86 / 86 / 8
Регистрация: 19.06.2012
Сообщений: 245
03.09.2012, 23:55     перегрузка операторов #5
RASHFor, тебе бы классы подкачать, ато чувствуется полная путаница. Но вообще да - оба куска это куски перегруженного бинарного сложения: 1 описание в классе а другое реализация.
RASHFor
6 / 6 / 0
Регистрация: 12.02.2012
Сообщений: 224
04.09.2012, 00:02  [ТС]     перегрузка операторов #6
та да классы туго идут...щас буду разбирать умные указатели...чувствую загрузну...
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.09.2012, 00:03     перегрузка операторов
Еще ссылки по теме:

C++ Перегрузка операторов С++
C++ перегрузка операторов
C++ Перегрузка операторов

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

Или воспользуйтесь поиском по форуму:
Герц
523 / 340 / 4
Регистрация: 05.11.2010
Сообщений: 1,077
Записей в блоге: 1
04.09.2012, 00:03     перегрузка операторов #7
Первый — это бинарное сложение, второй — это унарный плюс.
C++
1
CVector2D::operator+(CVector2D const& v1)const
Тут вообще нет возвращаемого значения, так что это хз что.
В первом случае это уже непосредственно инициализация?
Эээм?
Yandex
Объявления
04.09.2012, 00:03     перегрузка операторов
Ответ Создать тему
Опции темы

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