在c ++中使用离散分布时出现错误c2661

时间:2014-03-02 03:20:52

标签: c++ arrays probability-density

下面的代码实现了超过0,1,..,n ^ 2-1的离散概率分布函数(我在程序的早期定义了它的值)。最后我得到了这个pdf的实例,它是“数字”值。

但由于某些原因,我不知道,我有两个错误,一个: “预期恒定大小” “int prob [val]”另一个错误是:“错误c2661” 离散分发告诉我它可能没有两个参数,但我需要给它两个参数,我之前已经看过它的例子......

提前致谢

    vector< double> weights( n);
    for( int count = 0; count < (n*n); ++count) {
        weights[count] = pdf( i,count,n);
    }
    std::default_random_engine generator;
    std::discrete_distribution<int> distribution( weights.begin(), weights.end()) ;

    int number=0;
    const int val = n*n;
    int prob[val]={};

    for ( int count=0; count<(n*n); ++count ) {
        number = distribution( generator);
        ++prob[number];
    }

0 个答案:

没有答案