仕事で使ったほうがよいのかどうか判定するため、Hamanaの環境をVS2003からVS2005に移してみた。 コンパイルはほとんど一発で通ったが、ものすごい数の警告がでる。原因は strcpy() などのセキュアでない古い関数を使っているためで、親切に 「strcpy_s()使ったほうがいいじゃない?」と警告をだしてくれるからであった。 もちろん pragmaで表示しないようにもできるが、これには素直に従ったほうが良さそうなので、大部分はセキュアなバージョンに置き換えた。 で、VS2005移行時に一番危険だと思ったのは以下のコードがコンパイルはできるが、実行するとファイルのオープンに失敗してしまい、正しく動かなくなることだ。 int main() { std::ofstream ofs("日本語.txt", ios_base::out | ios_base::trunc); if (ofs