Автор Stanislav fedosov задал вопрос в разделе Другие языки и технологии
Помогите с переопределением операторов в C++ и получил лучший ответ
Ответ от ?????? Зелёный змий ??????[гуру]
class MyClass
{
public:
bool operator <(const MyClass &a) const
{
(если *this меньше a) return true;
// что *this меньше a определяешь сравнивая переменные-члены класса
return false;
}
bool operator>(const MyClass &a) const
{
(если *this больше a) return true;
return false;
}
};
или написать оператор не функцию-член класса
bool operator>(const MyClass &a, const MyClass &b)
{
return ( a больше b );
// что a больше b определяешь сравнивая начинку объектов a и b
}
Ответ от Kael[новичек]
"... пишет что слишком много параметров для данной функции" - если перегружаемый оператор является членом класса, ему может быть передан только 1 параметр (объект стоящий справа от оператора) , а объект стоящий слева (то есть объект который вызывает перегруженный оператор) передается неявно.
"... пишет что слишком много параметров для данной функции" - если перегружаемый оператор является членом класса, ему может быть передан только 1 параметр (объект стоящий справа от оператора) , а объект стоящий слева (то есть объект который вызывает перегруженный оператор) передается неявно.
Ответ от Дмитрий Куценко[гуру]
Вообще тут подразумевается сравнение - т. е. результат должен быть bool
Вообще тут подразумевается сравнение - т. е. результат должен быть bool
Ответ от (((d(O_O)b))[гуру]
wtf?
Что это за *****ая ***та? о_О
bool operator > (const Time& a, const Time& b) { //переопределение операции ">"
return a.значение>b.значение;
}
"<" аналогично. Вроде ничего не напутал... и хватит таких вопросов в 2 часа ночи, ок?
a.значение - этьо поле объекта класса, по которому производим сравнение
И "переопределение" называется перегрузкой по-человечески
Кстати да, я немного не прав. Ты можешь перегружать > и < как тебе в голову взбредет, но если ты хочешь что бы перегрузка именно сравнивала два объекта класса - юзай мой код
wtf?
Что это за *****ая ***та? о_О
bool operator > (const Time& a, const Time& b) { //переопределение операции ">"
return a.значение>b.значение;
}
"<" аналогично. Вроде ничего не напутал... и хватит таких вопросов в 2 часа ночи, ок?
a.значение - этьо поле объекта класса, по которому производим сравнение
И "переопределение" называется перегрузкой по-человечески
Кстати да, я немного не прав. Ты можешь перегружать > и < как тебе в голову взбредет, но если ты хочешь что бы перегрузка именно сравнивала два объекта класса - юзай мой код
Ответ от Grokc68@mail.ru[активный]
Я забыл
Я забыл
Ответ от 3 ответа[гуру]
Привет! Вот подборка тем с ответами на Ваш вопрос: Помогите с переопределением операторов в C++
Какие есть операторы выбора в C++ ?и как они работают
Выбирающий оператор
ВыбирающийОператор ::= if (Выражение) Оператор [else Оператор]
::=
подробнее...
спросили в C C Catch
для чего в C# нужен оператор Parse?
В C# оператора Parse нет.
Многие типы (классы) имеют статический метод Parse, который
подробнее...
для чего в C# нужен оператор Parse?
В C# оператора Parse нет.
Многие типы (классы) имеют статический метод Parse, который
подробнее...
спросили в Вводить
Оператор ввода в C#
Для ввода используются
Console.Read();
Console.ReadLine();
Первый считывают
подробнее...
Оператор ввода в C#
Для ввода используются
Console.Read();
Console.ReadLine();
Первый считывают
подробнее...
для чего в C++ cin.get () ;
stream::get() -- неформатированный ввод из потока одного символа
char c;
с =
подробнее...
спросили в GIAT
В Turbo Pascal есть оператор перехода Goto, а в C++ чего вместо него имеется (+синтаксис)???
Использование оператора безусловного перехода goto в практике программирования на языке СИ
подробнее...
В Turbo Pascal есть оператор перехода Goto, а в C++ чего вместо него имеется (+синтаксис)???
Использование оператора безусловного перехода goto в практике программирования на языке СИ
подробнее...
Ответ от 3 ответа[гуру]
Привет! Вот еще темы с похожими вопросами:
Оператор return в c#.Зачем он нужен?
Что делает этот оператор Вам уже написали - возвращает результат работы функции и завершает её. А
подробнее...
Какой самый дешевый оператор в волгоградской области?
САМЫЙ ДЕШЕВЫЙ СОТОВЫЙ ОПЕРАТОР В ВОЛГОГРАДЕ
Что-то подутомил меня «наш любимый» Смартс
подробнее...
что такое фредгольмовы операторы?
короче, из вышесказанного можно увидеть, что фредгольмов оператор в зависимости от множества, в
подробнее...
Оператор цикла с параметром
Это для C/C++, судя по тому, что в цикле разрешается указывать величину шага? Тогда
подробнее...
Чем отличается C# от С и C++
В С нет никаких классов и шаблонов
C++ наследует С с добавкой классов и шаблонов и вообще
подробнее...
Есть ли аналогия goto в с++ и если есть как ей пользоваться(если есть возможность то ответьте с примером)
Пожже нашол:
Ставишь в нужном месте метку. Метка — это идентификатор плюс двоеточие. В нужном
подробнее...
Перегрузка операторов в c# Зачем нужна перегрузка операторов??? Перегружать я умею, но не знаю где пригодится...
Чтобы не крабить.
Перегрузка как функций, так и операторов поможет тебе просто сократить
подробнее...