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