« 研究室が寒い | メイン | 引っ越しの準備 »

2006年01月10日

Visual Studio 2005で開発

Boostもインストールでき、本格的に開発環境をVisual Studio 2005に移しました。これまで.NET 2003で開発していたプロジェクトを2005用に変換してコンパイルしてみたところ、警告とエラーが出てくる出てくる……。まあ、それほど苦労せずに通すことができましたが、一つだけおやっと思ったのが以下の変更。

C++ コンパイラの準拠の変更によって、プロジェクトがビルドする前にコード変更が必要になる場合があります。C++ コンパイラの旧バージョンは、メンバ関数名 (例: MemberFunctionName) によるメンバ関数ポインタの指定を許可していました。C++ 標準では、演算子のアドレスを使用した完全修飾名 (例: &ClassName::MemberFunctionName) が必要です。

boost::bindでメンバ関数ポインタを使っていたので、書き直すことになりました。これまではClassName::MemberFunctionNameで指定できていたのが、頭に&が必要なんですね。

コンパイルも通り、実行してみると特に問題なく動作するようなので、今後はVisual Studio 2005で開発を継続することにしましょう。

投稿者 sai : 2006年01月10日 01:38

トラックバック

このエントリーのトラックバックURL:
http://www.wombat.jp/x/mt/mt-tb.cgi/384

コメント

コメントしてください




保存しますか?