導入
長い道のり、おつかれさまでした。C言語に近い基礎から、モダン C++ の実務レベルの文法まで一通り歩いてきました。最後に全体を振り返り、次の一歩を示します。
説明
このコースで学んだことを地図にすると、次のようになります。
flowchart TB base["基礎(C言語に近い部分)<br/>変数・制御・関数・配列・ポインタ"] base --> str["文字列とコンテナ<br/>string / vector / map / set"] str --> oop["オブジェクト指向<br/>class / 継承 / virtual / 演算子"] oop --> gen["ジェネリック<br/>テンプレート / STL アルゴリズム / ラムダ"] gen --> safe["安全な資源管理<br/>RAII / スマートポインタ / 例外"] safe --> modern["モダン機能<br/>optional / enum class / 構造化束縛"]
実務でコードを書くときの指針を、あらためて整理します。
- 生の配列・生ポインタより、
vector・string・スマートポインタを使う(安全で楽)。 - 引数は
const T&で受けるのが基本。書き換えるときだけT&。 - 資源は RAII に任せる(Rule of Zero)。
new/deleteを手で書かない。 - 定番処理は
<algorithm>に任せ、条件はラムダで渡す。 - 変更しないものには
constを付ける(const correctness)。
C++ はここからさらに、std::string_view、constexpr、並行処理(std::thread・std::async)、C++20 の「概念(concepts)」や「モジュール」など、奥深い世界が広がっています。しかし土台はこのコースで身につけた考え方です。
おわりに
この C/C++ コースでは、cout/cin から始めて、変数・制御・関数・配列・ポインタといった基礎、そして string・vector・クラス・継承・テンプレート・STL・スマートポインタ・例外まで、実務で使うモダン C++ を一通り学びました。
ここで身につけた「メモリを意識する感覚」「型と const で安全を守る発想」「RAII による資源管理」は、他の言語を学ぶときにも必ず土台になります。次のステップとして、手元にコンパイラ(Visual Studio や g++/clang)を用意し、この章で紹介したコードを実際に動かし、改造してみてください。あなたのモダンな開発の旅は、ここからが本番です。