arrays — ошибка c2661 при использовании дискретного распределения в переполнении стека

В приведенном ниже коде реализована дискретная функция распределения вероятностей по 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];
}

2

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]