0
下面的代码有问题:名称空间上的变量是否总是有默认值?
#ifndef _ALTERFPS_H
#define _ALTERFPS_H
#include "HUDLuaFunctions.h"
#include "AlterFPSNodes.h"
namespace AlterFPS
{
namespace Globals
{
static bool teamAwareness;
static int teams[] = {0, 0};
static bool getAwareness() {
return teamAwareness;
}
static void setAwareness(bool aware) {
teamAwareness = aware;
}
}
}
#endif
问题是teamAwareness始终是假的。 (我知道这不是Java),并发现setter的确将变量设置为true,但随后对getAwareness的调用显示teamAwareness为false (没有setAwareness之间的电话)...这怎么可能?我如何解决它?
我无法重现您的错误。我从getter获得'true'或'false',这取决于我给定的setter。 – chrisaycock
我在引擎中使用这段代码,我不太了解?有什么办法可以知道所说的引擎搞乱了我的代码吗?换句话说,当变量发生变化时,我该如何断点? teamAwareness的唯一引用是get和set,这正是我想要的。 – Machinarius
@Drknezz:也许问题不在于上述代码,而在于您使用它的方式。代码对我来说看起来不错,chrisaycock似乎已经测试过它... – sergico