ついでに、最近はVC++ばっかりなのでjava、C++の比較を書いてみます。
まず、c++のメリットですが
コンピューターで何が起きているかがわかる。
皆さんはjavaがどのように動的にメソッドを呼び出しているか
ご存知ですか?
c++やる前は、予想はしていましたが
確信は得られませんでした。
c++をやってみて、やっぱりそうか、となりました。
プリプロセッサも使い方を誤らなければ、いいんですが
実行速度を気にしないjavaには全く関係ないですね。
でも、C++のメリットってこれだけですかね。
あと、実行速度とメモリ効率にこだわれる点ですか(笑)
確かにこれって結構楽しいけど、時間が無いと死ねますから。
javaのメリットは、コンパイルに時間がかからない。
コンパイル時のエラーメッセージが的確。
NullPointerExceptionとか便利すぎ。
C++で配列のサイズを超えて、データにアクセスすると
他の変数にアクセスしちゃったり、他の関数が呼び出されたり・・・
かなり脅威ですよ。(便利なコンパイラを使えばいいんですけどね)
コードを変更する手間がC++に比べて少ない。
APIリファレンスが読みやすい。
SWING便利、しかも学習も楽。
スレッドの管理が楽すぎる。
その上、ネットワークライブラリーが簡単すぎて・・・・。
極めつけはやっぱりGCですかね。
ライブラリーを作るのに、使う側がdeleteしなかったら・・・なんて
心配が一切(ちょっと違うけど)不要なので
設計の自由度か高い。
C++だとなるべくライブラリーの外でのdeleteの数を減らす努力を
するんですけど、これがまたかなりつらいんですね。
C++の->も嫌いです(笑)
C#にはJAVAと違った物を期待しているんですが、
どうなんですかね。
最近はdelphiがマイブームになりそうな予感