Перегрузка бинарной операции

  • Автор темы Автор темы zzz
  • Дата начала Дата начала
Статус
Закрыто для дальнейших ответов.
Z

zzz

Как перегрузить бинарную операцию ? Например пишу так :
complx operator * (complx,complx) - говорит можно указать только один параметр
Помогите плиз ...
 
Если ты определяешь его как член класса, то должен быть 1 параметр - вторым будет сам объект. С двумя параметрами определяется функция не-член класса.
 
Если поподробней, то
Код:
class A {
int i;
i operator*(i) {return (this->i*i);}
};
//or 
// i operator*(i,j) {return (i*j);}
Используй или тот или другой вариант. Если i закрытая ф-ция член. А ты хотел бы чтоб в качестве параметров она получала два оператора, объяви ее другом. И еще насколько я понял в качестве параметров ты передаешь в ф-цию класс. Тогда делай это при помощи константных ссылок, так быстрее ;)
Код:
cmplx& operator*(const cmplx&, const cmplx&)
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab

🚀 Первый раз на Codeby?
Гайд для новичков: что делать в первые 15 минут, ключевые разделы, правила
Начать здесь →
🔴 Свежие CVE, 0-day и инциденты
То, о чём ChatGPT ещё не знает — обсуждаем в реальном времени
Threat Intel →
💼 Вакансии и заказы в ИБ
Pentest, SOC, DevSecOps, bug bounty — работа и проекты от проверенных компаний
Карьера в ИБ →

HackerLab