【发布时间】:2020-03-18 08:09:14
【问题描述】:
我对 C++ 完全陌生,我正在尝试制作一个非常简单的基于文本的战斗系统,但我不断收到错误消息:“objPlayer 未在此范围内声明”。
所有代码都写在main()函数之前:
#include <iostream>
using namespace std;
//DECLARE THE UNIT CLASS
class generalUnit {
public:
int health; //the amount of health the unit has
};
//DECLARE THE PLAYER THOUGH THE UNIT CLASS
void generatePlayer() {
generalUnit objPlayer;
int objPlayer.health = 100;
}
//DECLARE AND INITIALIZE ALL COMMANDS
//CHECK STATS
void comCheckStats() {
cout << objPlayer.health << endl;
}
【问题讨论】:
-
如您所见,您仅在
generatePlayer函数中声明了它。它只存在于其中,别无他处。 -
啊当然。我试图删除该函数并且错误消失了,但是现在它说“预期的初始化程序之前'。'令牌。所以我又把函数放回去了。有没有办法让 objPlayer 对其余代码可见,就像在类中使用“public”时一样?
-
哈哈我去看看,谢谢