質問: C++とDirectX9でFBX3Dオブジェクトのロードライブラリを作ってる最中なのですが、 解説サイト等ではなぜみなさんC++で作ってるのでしょうか。純粋なC言語ではFBXの読み込みというのはできないのでしょうか。 後、DirectXでゲーム作るならなぜC++じゃないのという人が多いのですが、自分の通っていた専門学校ではC言語だけでゲーム作りしてました。 FBXのロードライブラリだけはC++で作ってゲームを作る場所はCだけで書けるように・・等工夫してたのでしょうか学校の場合。
回答: C++ で作れて C では作れないようなものは基本的に無いと考えて良いです。 C に比べて C++ を C++ たらしめる言語の高級さというのは抽象化、つまり「どう見せるか」にあり、型が違っても同じ処理であるかのように見せたい (テンプレート) だとか、様々な機能がひとつの単位にまとまっているように見せたい (クラスや名前空間) といったところが C++ の力なのです。 プログラマにとっては、プログラムの部品の中身がどうなっているかというのはなるべく気にせずに使えるのが望ましいわけですから、具体的な実装をカプセル化の中に閉じ込めることが出来る C++ の方が楽になるというのは妥当な意見でしょう。 ただ、それは部品をまともに設計できていればという話で、カプセル化が下手な部品を使うことになったらかえって手間ということもありますし、自分が作る部品も配慮することが多いのも確かです。