- ベストアンサー
C#からC++/CLIにサンプルソースを書き換えたい。
VC++/CLIは、過去のソースをそのまま利用できる(マネージ・アンマネージ混在可能)?ので、C++/CLIで作成したく、 以下のURLにC#のサンプルソースはあるので、 http://www.geocities.jp/hatanero/socket1.html これからVC++/CLIに書き換えたいのですが、ここは全然違うというものがありましたら、教えて下さい。 C#からVC++/CLIに変換できるツールはあるのでしょうか?
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
はっきりいってC#とCは全く別言語です。 CとC++のような互換性はありませんし、 エディタの"すべて置換"機能で機械的にバンバン置き換えれば完成! というほど、甘く見ないほうがよいと思います。 きちんとC#及びC++/CLIを学習することを強く勧めます。 >C#からVC++/CLIに変換できるツールはあるのでしょうか? ツールの存在は未確認です。 しかし、あったとしても頼り切らない方がいいと考えます。 MicrosoftとしてはC#とC++を役割分担させたい方向のようです。 http://blogs.msdn.com/somasegar/archive/2007/08/08/visual-c-futures.aspx (英語です) 具体的には C++はネィティブ開発に特化させ、.NETの開発はC#を主力にしたい模様です。 この様に、言語の特性が違う以上、 対応する機能(クラス等)が存在しなかったりすると考えられます。 無理やり変換しても、とても非効率、読みにくいコードで、 改修も一苦労ということになりかねません。 参考程度で、結局は人が介入せざるを得ないと思います。
その他の回答 (2)
- επιστημη(@episteme)
- ベストアンサー率46% (546/1184)
> 構造体の書き方でつまずきました。 マニュアルを読んでください。 ref struct { public: System::String^ a; int b; };
- επιστημη(@episteme)
- ベストアンサー率46% (546/1184)
大差ありませんね、おおむね機械的に書き換え可能です。 # どの程度で"全然違う"とするのかわからないけども
補足
構造体の書き方でつまずきました。 struct Test { public string a; public int b; } で以下のようになります。 error C2146: 構文エラー : ':' が、識別子 'string' の前に必要です。