C ++类填​​充语法错误

时间:2017-07-21 23:36:26

标签: c++

我的课程如下:

  

class stats {

     公共:int strength,   感知,耐力,魅力,智力,敏捷性,运气,健康,耐力,魔法,因缘;

     

};

据我所知,除非我需要设置构造函数和析构函数,否则不应该有任何错误。

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

  

stats * mainstat = new stats;

我有以下功能来"填充"所述课程的对象:

  

void statfiller(stats * object,int table []){

     

对象 - >强度=表[0];对象 - >感知=表[1];   对象 - >耐力=表[2];对象 - >风采=表[3];   对象 - >智力=表[4];对象 - >敏捷=表[5];   对象 - >运气=表[6];对象 - >健康=表[7];   对象 - >耐力=表[8];对象 - >魔法=表[9];   对象 - >因缘=表[10];

     

}

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

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

  

int tablet [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 *,片剂);

当我这样做时,会出现编译错误,说明我的函数的语法不正确。

为什么会这样?我需要使用指针(*)或地址(&)吗?我有什么遗失的吗?

可能的是,解决方案非常简单,但在打字时,我只是看不出它的错误^^;

1 个答案:

答案 0 :(得分:0)

此问题的解决方法如下:

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

在函数调用" statfiller(mainstat *,平板电脑);"中,我犯的错误是调用stat对象的指针(在本例中为mainstat)而不是仅仅放置在对象中。