class getpoint;
class point
{
private:
int a;
int b;
public:
point(int a, int b)
{
this->a = a;
this->b = b;
}
friend void getpoint::show(point& object);
};
class getpoint
{
public:
void show(point& object)
{
cout << "A = " << object.a << endl << "B = " << object.b;
}
};
В классе getpoint есть функция show, её я обьявил как дружественную для класса point, но почему-то в строке cout << "A = " << object.a << endl << "B = " << object.b; VS2019 выдаёт ошибку и пишет, что нет доступа к члену point.a и point.b.Не могу понять почему компилятор не видит их, если я обьявил функцию как дружественную для класса point.
Разместите в другом порядке:
class point;
class getpoint
{
public:
void show(point& object);
};
class point
{
private:
int a;
int b;
public:
point(int a, int b)
{
this->a = a;
this->b = b;
}
friend void getpoint::show(point& object);
};
void getpoint::show(point& object)
{
cout << "A = " << object.a << endl << "B = " << object.b;
}
Продвижение своими сайтами как стратегия роста и независимости