C++类填充语法错误

C++ class filler syntax error

本文关键字:错误 语法 填充 C++      更新时间:2023-10-16

我的类如下:

类统计{

public:int强度,感知力、耐力、魅力、智慧、敏捷、运气、健康、耐力、法力、因果报应;

};

据我所知,它应该没有任何问题,除非我需要设置构造函数和析构函数。

我使用以下行创建我的对象:

stats*mainstat=新统计数据;

我有以下函数来";填充";所述类别的对象:

void statfiller(stats*对象,int表[]){

对象->强度=表[0];对象->感知=表[1];对象->耐久性=表[2];对象->魅力=表[3];对象->智能=表[4];对象->敏捷性=表[5];对象->运气=表[6];对象->健康=表[7];对象->耐力=表[8];对象->mana=表[9];对象->因果报应=表[10];

}

所以,在那之前,没有问题。至少,直到以下时间:

我用要填充的数据创建了一个表,然后将其提供给我的填充函数。

int平板电脑[10];片剂[0]=5;片剂[1]=5;片剂[2]=5;片剂[3]=5;片剂[4]=5;片剂[5]=5;片剂[6]=5;片剂[7]=50;片剂[8]=50;片剂[9]=50;片剂[10]=0;

statfiller(mainstat*,片剂);

执行此操作时,会出现一个编译错误,说明我的函数语法不正确。

为什么会这样?我需要使用指针(*)还是地址(&)?我缺了什么吗?

很可能,解决方案很简单,但在输入这个的时候,我不知道它有什么问题^^;

这个问题的解决方案如下:

该函数的语法为"void statfiller(stats*object,int table[])",其中stats*对象用作引用,指向stats类的对象。

在函数的调用"statfiller(mainstat*,tablet);"中,我犯的错误是调用stat对象(在本例中为mainstat)的指针,而不是只放入对象。