C++/CLIを使ってみる
VS2005をインストールしたまま放置してたので、噂のC++/CLIをちょっと使ってみました。
- C++ Builder感覚*1でフォームにコントロールを配置できる。
- C++ Builder感覚でイベントハンドラを書ける。textBox1->Textとかでコントロールのプロパティにアクセス。
- .NET標準の文字列型はSystem::String^*2。これをstd::stringに変換する方法。
- 逆にstd::stringをSystem::String^に変換するには、 gcnew String(str.c_str()) とする。
- 普通のC++のコードは(API呼び出しもポインタもテンプレートも)普通に通る。*3
ということで、「コントロールとかから受け取った文字列は速攻でstd::stringに変換して、ロジックはひたすら普通のC++で書く」という作戦で何とかなりそうな感じです。なんかMSの意図とは違う気がしますけど。まあいいや。
ともかくその気になればC++ Builderの代用として使えそうです。