- 締切済み
開発環境について
CおよびC++などの勉強を考えているんですが、 よく企業の求人でC C++ができる方募集ってのを見かけます。 そこで質問なんですが、 一概にC C++って言っても、linuxでのgccや windowsでのcygwin環境に おけるgccだったり、無償のwindows用のbccだったり、VC++だったり どのプラットホームでどのコンパイラを使えばいいか、分かりません。 実際に会社などではフリーのコンパイラで製作してる場合もあるよ! とかいった具合なのでしょうか? 自分は個人的にvine linux3.2とwindows xp professionalを使用しているんですが、linuxのgcc環境でいくら勉強しても、それでwindows用のアプリケーションは作れないよ?とかあるんでしょうか? それとも、普通は最初に作りたいものが先きに決まっていて、それを 作るためには、このOSでこのコンパイラの組み合わせの環境じゃないといけないとかあるんでしょうか? 作りたいものと、コンパイラや環境選びの基準がいまいち分からないので、現場で製作をしておられる方や、プログラミングに詳しい方が いましたら是非、ご教授よろしくお願い致します。
- みんなの回答 (4)
- 専門家の回答
みんなの回答
>ただしVC++にはMSがWin32APIの機能をある程度簡単に利用できるようにとMFCが用意されている 全然違うよ。一体いつからそんな事になったんだよ。 MFC関連の書籍なり、MSDNなり良く読めよ、このバカ。 >(ただしExpress EditionにはMFCは付いてないので直接Win32APIをたたく必要がある。) MFCがラップしていないAPIなんか腐るほどある。 MFCが付いていようと、直にAPIを叩く事は良くある。 まあ、何だな、およそ2年後に「Win32APIがC++を前提に作られている」なんて、構造原理上、決してありえないデタラメを書いて失笑を買った奴は、昔からこんな調子だなあ。 キチガイとしか言いようがないぜ。
普通は、C/C++は、わかっていて、それぞれ、応用毎に、必要な知識が必要です。 コンパイラの開発、Windows Mobileのデバイスドライバ、GPUのOpen GLライブラリの開発、いずれも、異なった知識が必要です。 ただ、言語としての、C/C++は、いずれの場合も、基本は同じです。
- gon987
- ベストアンサー率16% (53/312)
>Cの処理やアルゴリズムよりも、OSと対話する部分、Windows特有の命令等を覚える必要がある言語のため、あまり応用が効かないといわざるをえません。 他のOSでももしくはWindowsのほかのC++コンパイラでもいいけど C++標準機能でない部分の利用となるとどれでも同じこと。 別にVC+が特別なことではない。 (Bcc使ったところでGUIアプリを作るならVC++と同じこと) ただしVC++にはMSがWin32APIの機能をある程度簡単に利用できるようにと MFCが用意されている(ただしExpress EditionにはMFCは付いてないので直接Win32APIをたたく必要がある。) gccを利用してLinuxなどでプログラミングするにしてもC/C++標準なできることが限られている部分だけならいいけどOS固有の機能やGUIアプリの開発となると労力的にVC++でWindowsアプリ開発するのと大差ない。 そもそも質問者のって会社の事業内容みればある程度推測できると思うけど
- _Samurai_
- ベストアンサー率37% (38/101)
VCに関しては、「別の言語」と思ったほうがいいです。 Windowsでウィンドウを生成するとか、そういった処理のコードをほぼ全自動で生成してくれるため、「自分のプログラムなのに理解しているのは半分以下」などといった現象が起こりえます。 Cの処理やアルゴリズムよりも、OSと対話する部分、Windows特有の命令等を覚える必要がある言語のため、あまり応用が効かないといわざるをえません。 しかしながら、やはりCの能力は大いに必要なので、bccやgccで基本ができている人は習得も早いと思われます。 ちなみに、bccやgccといったコマンドラインベースのコンパイラは、どれもほぼ一緒です。 VCにも「コンソールアプリケーション」開発のモードは存在します。