週末はいつも晴れ

社会人3年目の日記です。プログラミングとか旅行とかラーメン。

rand()とrand_r()と<random>

GoogleC++スタイルに矯正するプログラムcpplint.pyをEmacsに導入したので、
以前に書いたモンテカルロプログラムを修正することにしました。


すると、rand()関数を使っている行全てにクォーテーションがっ!!
f:id:ikarino99:20140625142215p:plain


調べてみると、マルチスレッドプログラミングで影響してくる模様。
IBM Knowledge Center


rand_r()のことはさておき、
今後のことを考えて、C++11のrandomを使って書きなおすことにしました。
<random>について参考にしたURL:

    読みやすくて本当におもしろい。書いてる人間はクズだけど。

    実際に参考にさせていただいたコード。

すごく勉強した気がする。
19937って何だよとかw
乱数は奥が深いですね。


参考動画:

C++ 11 Library: Random Number Engine - YouTube

C++ 11 Library: Random Number Distribution - YouTube