読者です 読者をやめる 読者になる 読者になる

VC6.0よりも最新のC++コンパイラでC++を書くと良い8の理由と、悪いほうの8つの理由(大嘘)

元ネタ:C++ よりも C# よりも Java でゲームを作ると良い 8 の理由と、悪いほうの 8 つの理由 (大嘘) - ぐるぐる〜

1.STL が便利
VC6はメンバ関数テンプレートが実装されていなかったVC4~VC5までの呪いを受けているのでSTLが変。
VC6.0で既にメンバ関数テンプレートは実装されているので
STLPortを使えば、という話があるが面倒なので最新のコンパイラに添付されたSTLを使った方が良い。


2.Boost が便利
VC6でBoostとか!
コンパイル通らないんですけど!!
みたいなことになるので最新のコンパイラを使った方が良い。
BoostとSTLがちゃんと使えたらいろんな不便さがあまり気にならない!!!(と信じるのがC++を使うコツ


3.最適化が便利(コンパイラオプションが充実
VC6 も最適化してくれますが、最新のコンパイラの最適化を使った方が何となく気持ちが良い。
それでなくてもCodeWarriorみたいに環境最適化をしてくれたりするコンパイラもあるのでなかなか侮れない。(コンパイラのReleaseNoteは熟読しましょう!!!)
コンパイラオプションもなにげにふえていて
Warning設定が色々出来たりしますよ。


4.IDEがかっこいい
VC6 は全くVisualな感じがしないですが、最新のVisualなStudioは見た目が格好いい。
CodeWarriorとかは最新版でもちっともかっちょよくないが気にしない!


5.C99が便利
たまにauto変数の可変長配列を使いたくてC99をONにしちゃったりなんかして。
VisualStudioってC99サポートしてな……けふんけふん。


6.C++0x拡張がお遊びで入っていたりする
絶対に仕事のコードとかでONにするなよ!!!とか書いてあったりしますが、
0x拡張が既に取り入れられてnullptrとか使えたりするコンパイラもあります。
絶対に仕事のコードでONにするなよ!!!


7.ポトペタは夢だったんだ……と諦められる
C++Builderが世界を席巻すると夢見た時代が俺にもありました……。


8.リンカが糞重い時に最新のコンパイラでもこれなんだ!!!とか言い訳できる
C++はファイル数とか行数が増えてくると異常にリンクが遅くなって
ちょっと書き換えてリンクするだけで一分とか五分とか待たされて涙目になることがありますが、
「最新のコンパイラでもこんなんだからしょうがないよ!!」と諦められます。


1.悪いところ、VC6.0でないと俺俺STLを書くことができない
VC6.0ならVCのSTLって糞だよなーと良いながら自前でコンテナを実装することができます


2.悪いところ、VC6.0の先を行くとC++マスターであると信じられなくなる
VC6.0を使っていればC++って超簡単だよなーと良いながらC++0xを見なかった事にできます。


3.悪いところ、最新のコンパイラは安定してなくてよくバグっているのでVC6.0なら安全
VC6.0なら長年使われていて安定感抜群!!!
最新版のコンパイラを使うとバグが入っていてキー!!ってなったりします。

でも、最新のコンパイラもバグっているが過去のコンパイラはもっとバグっている罠。
VC6.0ともはや関係ないけど、限定環境のコンパイラが意外とバグっていて、
よくPatchがでます。最新版ラブです。
あれ、特に悪くないですね。


特に悪いところが見あたらなくなってきたので、
最新版を使いましょう!!
ゲーム関係ないけど、ゲームの現場では最新版ラブですよ!
とか言ってみる。


VCの最新版なんてもう何年も買ってないですけどね……。
gccCodeWarriorでいいよ……。(いやよくないが)