- ベストアンサー
他言語との連係
c言語と他言語(具体的にはc#など)を連係させるということは可能なのでしょうか? 例えばネットワーク対戦のゲームを作成するとして、ゲームの本体の部分を c言語で書き、ネットワーク関連の部分をc#で記述するといった感じです。 的外れな質問かもしれませんがどなたかご教授お願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
C#に移行すべきかはそれぞれの環境によるかと思います。 ・今後もWindows限定(Linux、Mac用アプリは開発しない) ・小メモリ、高速アプリなどは求めない という状況であれば、おそらくC#に移行した方が後の開発は圧倒的に早くなると思います。 とはいえ、私自身軽量・高速なアプリを作るときに今でもC/C++はバリバリ使っていますし、適材適所ですね。 とはいえ、C#はC言語ベースで難しくないですし、結局ネットワーク部を開発されるということですから、その時にすぐ覚えてしまうと思いますよ。
その他の回答 (2)
- cortotbach
- ベストアンサー率44% (8/18)
ゲームということでおそらくはWindows環境ですよね? その場合、Microsoft的には.NET Frameworkに依存させれば、C#, VB, C++など多くの言語で連携が可能です。.NET Framworkの共通言語基盤の部分です。 通信部(ネットワーク部)をC#で書いてコンポーネント化し、C++から呼び出すことなどはできます。 一方で、C言語をどの程度のものを想定しているかわかりませんが、非常に高速な動作を要求するなどの理由がない限り全てC#の方が良いのではと思います(高速なCPU,多量のメモリが一般的である現時点で)。言語の習得が問題でしたらC#を覚えてからゲームを作った方が結果的には速いかもしれないですね。
お礼
お返事ありがとうございます。 今までc言語でプログラミングをしてきたのですが、最近c#の勉強を始めたので これらを組み合わせられないかと思い、質問をさせていただきました。 cortotbachさんの話では全てc#にすべきとのことですが、 やはり全面的にcからc#へ乗り換えたほうがいいのでしょうか?
- Yanch
- ベストアンサー率50% (114/225)
他言語から呼び出せるように、ライブラリ化すれば、よいと思います。 Windowsなら、COMとか調べてみると良いでしょう。 Linuxなら、共有ライブラリなど。 MSDNのCOMを解説してるサイト http://msdn.microsoft.com/en-us/library/aa139695.aspx
お礼
お返事ありがとうございます。 COMですか。参考になります。 いろいろ難しそうですががんばってみます。
お礼
ありがとうございます。大変参考になりました。 c#の学習を進めていきたいと思います。