GA将?開発日記~王理のその先へ~

ネタ勢最強を目指して絶賛開発中。

どうぶつしょうぎの完全解析結果をWindows(Visual C++)で使う方法(大雑把なまとめ)

 https://www.tanaka.ecc.u-tokyo.ac.jp/ktanaka/dobutsushogi/

 URLは再掲。上記サイトのプログラムを以下の環境で動かす事に成功したので、メモ。 

 プログラムの修正が必要だった箇所は、以下の通り。
// 2016/08/06 06:51 4つ目の修正箇所を追記

  1. ifstreamのopen()関数の第二引数として「std::ios::binary」を追加。
    • Windows環境では、これを指定しないとバイナリモードだと認識されないらしい。
  2. ifstreamのseekg()関数の直前に、clear()関数の呼び出しを追加。
    • ファイル末尾までシークした後の動作が、こうしないと正常にならないらしい。
  3. ifstreamのseekg()関数の第二引数を「ios_base::beg」に変更。
    • _S_begマクロ(?)が未定義の為。
  4. VC++のminマクロ定義が悪さするので、dobutsu.hをインクルードする前にminマクロをundefする。

 私は4つ修正しましたが、ひょっとしたらどれかは不要な修正かもしれません。手間がかかるのと、取りあえず動く様になったコードを修正するのは嫌なので、検証はしませんが。

 という訳で、一応備忘録兼情報共有という事で。