• 🔥 Бесплатный курс от Академии Кодебай: «Анализ защищенности веб-приложений»

    🛡 Научитесь находить и использовать уязвимости веб-приложений.
    🧠 Изучите SQLi, XSS, CSRF, IDOR и другие типовые атаки на практике.
    🧪 Погрузитесь в реальные лаборатории и взломайте свой первый сайт!
    🚀 Подходит новичкам — никаких сложных предварительных знаний не требуется.

    Доступ открыт прямо сейчас Записаться бесплатно

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

  • Автор темы Автор темы 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