Why It Fits
選ぶ理由
- 最高クラスの実行性能・ハード制御
- 低レイヤと OOP の両対応
- 長年の実績と膨大な資産
Language Profile
Bjarne Stroustrup / 1985年登場
C を拡張した高性能システム言語。ハードを細かく制御でき、ゲームエンジン・組込み・科学計算・高頻度処理で現役。
Specifications
Introducing
Decision Guide
採用する理由と、事前に受け入れるべきトレードオフを分けて確認します。
Why It Fits
Trade-offs
Best Fit
Deep Dive
C++ は Bjarne Stroustrup が C を拡張する形で設計し、1985 年に登場した高性能なシステムプログラミング言語です。C の速度とハードウェア制御能力を受け継ぎつつ、クラスやテンプレートといった抽象化の手段を加えました。「払わない機能のコストは負わない(ゼロオーバーヘッド)」という設計思想のもと、書き方次第で C 並みの効率を保ったまま大規模なソフトウェアを構築できます。
C++ の強みは、最高クラスの実行性能とメモリ・ハードウェアへの細かい制御を両立できることです。どのタイミングでメモリを確保・解放するか、データをどう配置するかまで開発者が決められます。だからこそ、わずかな速度差が効くゲームエンジンやリアルタイム処理で選ばれ続けています。
抽象化と低レベル制御を同居させられる反面、その自由度が複雑さの源にもなります。
#include <memory>
int main() {
// 生ポインタの手動 delete は漏れやすい
auto p = std::make_unique<int>(42); // スマートポインタで自動解放
return *p;
}
Language Decision
TL;DRは入口です。実際に選ぶ・使う段階では、何を解決するか、何と比較するか、導入後にどこで詰まるかまで見る必要があります。
ゲームエンジン
型付け: 静的・強い型付け / 実行方式: コンパイル(ネイティブ) / パラダイム: マルチパラダイム(手続き / OOP / ジェネリック)
低レイヤと OOP の両対応
言語が複雑で習得が難しい
First Step
#include <iostream>
int main() {
std::cout << "Hello, World!";
}公式ドキュメント