C++ c++--direct——非成员函数体中类成员的访问
下面的例子显然是错误的,但我想知道是否有可能实现下面这样的目标C++ c++--direct——非成员函数体中类成员的访问,c++,class,friend,class-members,non-member-functions,C++,Class,Friend,Class Members,Non Member Functions,下面的例子显然是错误的,但我想知道是否有可能实现下面这样的目标 extern int return_value(); class A { private: int k = 1; public: friend int return_value(); }; int return_value() { return k; } 我知道如果不将类A的实例传递到函数return\u value()asreturn\u value(A&A)中,然后作为A.k访问变量,我就无法执行以
extern int return_value();
class A {
private:
int k = 1;
public:
friend int return_value();
};
int return_value()
{
return k;
}
我知道如果不将类A的实例传递到函数return\u value()
asreturn\u value(A&A)
中,然后作为A.k
访问变量,我就无法执行以下操作
注意函数
return\u value()
就是一个例子。我想知道,在C++语言的范围内是否有一种方法可以直接访问非成员函数体 AFAIK中的变量,只有两种方法访问类成员(非成员函数)。
当然,这是假设作用域允许函数访问类成员。如果成员变量不依赖于实例对象,则可以使用静态成员变量。您可能需要读取,然后告诉我们为什么需要这样做。可能还有其他(更好的)解决方案。