Передача объекта без ссылки не изменит значения вашего объекта калькулятора, если вы ожидаете, что они будут инициализированы вашими входными значениями после вызова setNumbers
. Вместо этого у них будут значения мусора, поскольку они не инициализируются для getNumbers
.
. Передайте объекты калькулятора по ссылке, используя &
, как указано в комментариях, и вы можете go.
class calculator
{
public:
int n1, n2;
friend void setNumbers(calculator &v);
friend void getNumbers(calculator &v);
};
void setNumbers(calculator &v) {
cin >> v.n1 >> v.n2;
}
void getNumbers(calculator &v) {
cout << v.n1 << ' ' << v.n2 << '\n';
}