类数组不起作用

时间:2014-03-17 21:27:09

标签: c++ arrays class declaration

代码的一部分:

class WierszTrojkatPascala {                    //tab,tablica is an array
private:
int tablica[];
public: 
    WierszTrojkatPascala(int n) {       
        int* tab = new int[n+1];    
        for(int i=0;i<n+1;i++)
            tab[i] = 0;                 

        tab[0] = 1;    

        //creating pascal triangle for n//

        for( int i=0; i<=n; i++)
            for(   int j=i; j>0; j--)
                tab[j]=tab[j]+tab[j-1];          

        for(int i=0;i<=n;i++)
            cout<<tab[i]<<' ';

        for(int i=0;i<=n;i++)
            tablica[i]=tab[i];   

    }   

    int wspolczynnik(int m) {         
            return tablica[m];
    }
};

这个班级创造了帕斯卡三角形的第n节。在代码的其余部分我想使用wpspolczynnik函数。不幸的tablica [m]不起作用。例如,当我创建类WierszTrojkataPascala verse的对象并执行verse.wspolczynnik(1)时,我得到的返回值等于2但它应该是4.为什么我的诗句被构造函数改为正确但是当我想要得到时通过函数wspolczynik()它不起作用。 提前Ty!

1 个答案:

答案 0 :(得分:2)

这个数据成员tablica的定义

int tablica[];

无效。您必须使用const表达式指定数组的大小。