Следующий пример явно неверен, но я хотел бы знать, возможно ли достичь чего-то вроде следующего
extern int return_value();
class A {
private:
int k = 1;
public:
friend int return_value();
};
int return_value()
{
return k;
}
Я знаю, что не могу сделать следующее, не передав экземпляр класса A в функцию return_value()
как return_value(A &a)
затем доступ к переменной как a.k
обратите внимание на функцию return_value()
это пример. Я хотел бы знать, есть ли способ в рамках языка C ++, чтобы разрешить прямой доступ к переменным в телах функций, не являющихся членами
AFAIK Есть только два способа получить доступ к членам класса (для функций, не являющихся членами).
Конечно, это предполагает, что область действия разрешает функции доступ к членам класса.
Других решений пока нет …