我确信这是一个简单的解决办法,但我似乎无法找到解决问题的直接答案。
所以,在GameScreenLevel1.ccp文件中,我有一个像这样的bool:
bool GameScreenLevel1::LevelComplete()
{
if(mEnemies.empty() && mFruit.empty())
{
return true;
}
return false;
}
在GameScreenManager.ccp文件的Update函数中,我试图调用它来查看它是否为真。
if(GameScreenLevel1.LevelComplete() == true)
{
ChangeScreen(SCREEN_LEVEL2);
}
我知道我不能使用(GameScreenLevel1::LevelComplete() == true)
因为bool是非静态的,所以我想知道如何从不同的类中引用这个bool。
感谢阅读和回答!
答案 0 :(得分:0)
我不确定问题是什么,但是如果你只是想检查LevelComplete()
的返回,那么你所写的内容几乎没问题。它可以浓缩成类似的东西:
bool GameScreenLevel1::LevelComplete()
{
return (mEnemies.empty() && mFruit.empty());
}
然后在你的Gamescreenmanager.cpp
中你可以做这样的事情:
GameScreenLevel1 GameScreenLevel1_(/*constructors*/);
/*extra stuff */
if(GameScreenLevel1_.LevelComplete()) {
/* Code here */
}