コース一覧へ戻る
AI013
プロフェッショナル
現代的なC++チュートリアル
このチュートリアルは、経験豊富な開発者に、C++11/14/17/20の新機能を迅速に確認できるようにすることを目的としています。言語の使いやすさの向上、実行時性能の改善、新しいコンテナ、スマートポインタとメモリ管理、正規表現、並列プログラミング、さらにC++20のプレビューについてもカバーしています。
4.8
30.0h
318 受講者
10 レッスン
2 いいね
人工知能
コース概要
コンテンツ概要
このチュートリアルは、経験豊富な開発者向けに、C++11/14/17/20の新機能を素早く参照できるように設計されています。内容は、言語の使いやすさの向上、実行時性能の改善、新しいコンテナやスマートポインタ・メモリ管理、正規表現、並列プログラミング、さらにはC++20の予習までカバーしています。
迅速にC++11/14/17/20に習熟し、現代的なC++プログラミングへの入り口を歩み出しましょう。
著者: 欧長坤 (Ou Changkun)
謝辞: CC BY-NC-ND 4.0 ライセンスに基づき、すべてのGitHub貢献者および関連コミュニティへの感謝を表します。
学習目標
- コマンドラインツールを使用して、C++コンパイラ環境とターゲットアーキテクチャを特定し確認する。
- C(C89、C99、C11)とC++(C++98、C++1x)の標準間の互換性と重複した歴史を説明する。
extern "C"ヘッダーやマルチステージコンパイルワークフローを用いて、クロスランゲージリンクを実装する。nullptrを使用してポインタの曖昧さを解消し、constexprおよびif constexprでコンパイル時論理を実装する。auto、decltype、型エイリアス(using)を活用して複雑な宣言を簡略化しながら、overrideおよびfinalにより堅牢なオブジェクト指向設計を確保する。- 多変数テンプレート、折りたたみ式、非タイプテンプレート引数推論を用いて高度に汎用的なコードを設計する。
- 各種キャプチャモード(値、参照、式、汎用)を使用して、ラムダ式を定義・実装する。
std::functionおよびstd::bindを活用して柔軟な関数ラッパーと部分関数適用を作成する。- 式を左値(Lvalue)、一時的右値(Prvalue)、付加的右値(Xvalue)に分類し、移動セマンティクスを適用してクラスのリソース管理を最適化する。
std::array(固定サイズ、スタック)とstd::vector(動的サイズ、ヒープ)のメモリモデルと使用シーンの違いを区別する。