如何从类中的静态函数c ++中获取非静态变量?

时间:2013-10-19 10:20:00

标签: c++

我尝试找到如何从静态函数中获取非静态变量的方法?

在静态函数中,我想从非静态变量中获取值。

有可能吗?

class test {
private:
     static void test();
     string test;
}

2 个答案:

答案 0 :(得分:1)

这是不可能的。静态成员函数只能访问静态类成员。如果您认为可以调用

,这也是有道理的
test::test();

没有实例化对象。实际上,在执行上面的代码时,甚至可能没有单个类实例。

如果需要从静态成员函数访问非静态类成员,则需要将类实例传递给它,无论是指针还是引用。但是,当你这样做时,你也可以使静态成员函数非静态。

答案 1 :(得分:0)

你做不到。使用静态函数时,您处于静态上下文中。只能访问静态成员,其他成员不存在。