стимулируйте библиотеку случайного числа, используйте тот же генератор случайных чисел для различных генераторов варьируемой величины

Парсинг C++ чрезвычайно труден, потому что грамматика неразрешима. К кавычке Yossi Kreinin :

Исключительно сложная грамматика

"Исключительно" должна быть интерпретирована буквально, потому что все популярные языки имеют контекстно-свободный (или "почти" контекстно-свободный) грамматики, в то время как C++ имеет неразрешимый грамматика. Если Вам нравятся компиляторы и синтаксические анализаторы, Вы, вероятно, знаете то, что это означает. Если Вы не в такого рода вещь, существует простой пример показ проблемы с парсингом C++: [действительно ли 110] определение объекта или объявление функции? Оказывается, что ответ зависит в большой степени от кода прежде оператор - "контекст". Это показывает (на интуитивном уровне), что грамматика C++ довольно контекстно-зависима.

11
задан RandomGuy 28 October 2009 в 16:04
поделиться

1 ответ

Ваша гипотеза верна. Вы хотите, чтобы оба экземпляра variate_generator использовали один и тот же экземпляр генератора случайных чисел. Поэтому используйте ссылку на mt19937 в качестве параметра шаблона.

variate_generator<mt19937 &, normal_distribution<float> > nD(randgen, noise1);
variate_generator<mt19937 &, normal_distribution<float> > nC(randgen, noise2);

Очевидно, вам нужно будет убедиться, что randgen не выходит за пределы области действия до nD и нКл д.

11
ответ дан 3 December 2019 в 09:41
поделиться
Другие вопросы по тегам:

Похожие вопросы: