建议我在哪里使用静态变量?
因为我现在更倾向于使用它。是否有任何使用静态变量的做法是不好的做法,否则会很快填满内存?
目前我正在用c ++做小游戏。因此,为了保持一些状态,比如跳跃位置和动画时间,我必须在函数中使用静态变量,并且该函数将在循环中被多次调用。所以静态变量会做那个Job。是否有任何oo模式来克服这个问题?
void jumpit(){
static int jump ;
if( !jump && pressed)
jump=1;
if (jump)
obj.y++;
}
在循环中我会调用它来完成工作。我们还有更好的想法吗?
答案 0 :(得分:0)
你的" obj"可以跟踪自己的状态。
独立的跳跃功能可以实现为:
void jumpit(Object& obj, bool pressed)
{
if( !obj.jump && pressed)
obj.jump = true;
if (obj.jump)
obj.y++;
}
或者最好将jumpit作为" Object"
的一部分来实现将状态保持在函数中几乎不是一个好主意。