Учитывая, что стандарт C ++ только слабо определяет rand()
, вы не можете утверждать, что он эквивалентен функции matlab.
К счастью, C ++ 11 теперь имеет набор генераторов, которые стандартизированы в стандарте включить заголовок <random>
. Например, std::mt19937
является генератором Twers Mersenne, а std::minstd_rand
является линейным конгруэнтным генератором, который позволяет вам настроить коэффициенты последовательности.
Мое предположение заключается в том, что генератор Matlab может быть воспроизведен с помощью этого последнего , Подробные сведения см. В документах Matlab. К счастью, тестирование вашего кода будет тривиальным.