可以说我有一个带有静态函数的类。该函数被代码的另一部分调用为静态函数,而不实例化类对象。然而,这个静态函数在其代码中也依赖于变量 x。但是,x 仅被初始化为某个值或在构造函数中被清除。但是,鉴于没有实例化类的对象,我相信该变量是未定义的。所以,我有几个问题:
1)是否调用了构造函数?
2) 变量 x 是否未定义?
我怎样才能解决这样的情况?
在下面的示例中,我希望 y 为 25,但可以吗?
class CExample
{
public:
CExample(void);
~CExample(void);
static void foo();
int x;
};
CExample::CExample()
{
x = 5;
}
void CExample::foo()
{
int y = x*5;
}