• Бесплатный ВЕБИНАР по OSINT с Екатериной Тьюринг: ➡️9 февраля в 19:00 (мск) пройдет урок

    Как безопасно искать информацию в открытых источниках

    🔥 Записаться 🔥

Кто кому Friend?

  • Автор темы Автор темы Creo
  • Дата начала Дата начала
C

Creo

Допустим некотороя ф-ция друг принимает в качестве параметров класс, другом которого она является.
Например:
Код:
Class MyC;
friend MyC& foo(const MyC& obj1, const MyC obj2){
a = obj1.a + obj2.a; // a закрытая переменная член
MyC ret(a);
return ret;
}
Вопрос возможен ли такой синтаксис, либо локально надо создовать объект этого класcа и писать следующее MyC loc_a=obj1.a + obj2.a;? :)
 
Это не наследование, поэтому создавай loc_a.
 
А что если б было наследование? Что тогда с а?
 
А что мешает сделать protected метод GetA()?
 
Так как тот класс что я пушу прденазначен для больших чиле. Т.е. таких что больше 2 в 32 степени >4 500 000 000. То "гонять" туду-сюда такие значения методоми просто не эвективно. Поэтому внешние ф-ции сразу отподают. Остаются только ф-ции члены и ф-ции друзья. Естественно, так как это арифметика хотелось бы чтоб работали такие вещи как (число+ обект) и (обьект + число). Остаются только друзья. Вот так... ;)
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!