c ++类全局变量未在其他类

时间:2015-09-17 21:40:32

标签: global-variables

我尝试在另一个类中使用我的main中的全局类,但它没有用完...

PilhaJogo p[7];  //these are my global classes
PilhaSaida s[4];
Card v[60];
PilhaDescarte d;
PilhaEstoque e;

这是我试图使用的PilhaDescarte的功能。

void Discard(){
setTopo(getTopo()+1);
v[getTopo()].aberta=true;
}

这是我尝试使用Discard的类的标题:

#include<Card.h>
#include<PilhaDescarte.h>
#include<PilhaJogo.h>
#include<PilhaSaida.h>
#include<Global.h>

using namespace std;

class PilhaJogo;
class PilhaDescarte;
class PilhaSaida;
class PilhaEstoque

这是错误发生的地方......:

void Compra(){
    v[getTopo()+1];
    d.Discard();
}

我不知道如何使用其他类中的类的全局变量。 我确实初始化了主要的所有类:

for(i=0;i<60;i++){
    v[i].nome="0";
}

for(i=0;i<4;i++){
    s[i].setStatus(false);
}

for(i=0;i<7;i++){
    p[i].Inicia(0+4*i,i);
}
d.setBase(0);
d.setTopo(0);
d.Inicia();                     

1 个答案:

答案 0 :(得分:0)

我正在尝试理解,但是试着看看C ++编程的良好方式,因为你需要做一些改变。首先,您需要在构造函数中初始化变量并尝试查看封装,我们无法将变量设置为public。 =)

如果你愿意,有这本很棒的书(巴西葡萄牙语): http://www.cesarkallas.net/arquivos/apostilas/programacao/c_c%2B%2B/ApostilaProgramacaoCppv045.pdf

我是巴西人,我认为你也是因为变量名称。