実践C++応用講座 【無料】
C++の基礎がある程度できている方を対象に、C++の応用的な使い方を順不同で解説していきます。
C++のテンプレートは非常に規模が大きく、使い方も多岐に渡っています。そこで応用講座ではテンプレートを中心に解説し、合間に入門講座では扱わなかった細々したC++の機能を解説しようと思います。
それでは一緒に頑張っていきましょう!!
以下は、解説記事の日付順のリストです。(アイキャッチ付きの逆順リストはこちらです。)
- 第1回目 クラス・テンプレートの基本
- 第2回目 関数テンプレートの基本
- 第3回 分割コンパイルとテンプレートの「明示的」実体化
- 第4回 明示的特殊化とテンプレート用語の解説
- 第5回 部分的特殊化とオーバーロード
- 第6回 部分的特殊化で良く使う部品とSFINAEの利用方法
- 第7回 部分的特殊化で便利な標準ライブラリの仕組みとその使用例
- 第8回 長い長い部分的特殊化をエイリアス・テンプレートでちょっと短く
- 第9回 部分特殊化チックな関数テンプレートのオーバーロード
- 第10回 メンバの有無を判定するテンプレート
- 第11回 decltypeとstd::declval
- 第12回 ルールは単純だけど意外にややこしいメンバ・テンプレート
- 第13回 関数テンプレート・パラメータの便利な特殊性
- 第14回 結構便利な可変長引数テンプレート(Variadic templates)
- 第15回 可変長引数のクラス・テンプレート例tuple
- 第16回 続・可変長引数テンプレート
- 第17回 続々・可変長引数テンプレート
- 第18回 ユニバーサル参照の落とし穴
- 第19回 CRTPを使ってみよう!
- 第20回 std::tupleの要素を静的に枚挙する
- 第21回 std::tupleの要素を動的にアクセスする
- 第22回 関数オブジェクトとラムダ式
- 第23回 ラムダ式のメンバ変数≒キャプチャ
- 第24回 高性能だがちょっと危険な参照キャプチャ
- 第25回 ローカルな関数テンプレート的なジェネリック・ラムダ
- 第26回 不思議な3項演算子
- 第27回 条件演算子のちょっと便利な使い方
- 第28回 マルチプラットフォームなスタック・トレース
- 第29回 マルチプラットフォームなスタック・トレースその2
- 第30回 可変長引数テンプレート応用編(C++版お手軽printf関数)
- 第31回 マルチプラットフォームなスタック・トレース補足!
最後にちょっと宣伝させて下さい。
セオライド テクノロジーでは高速・高生産性なC++の生産性を更に高める開発ツールTheolizer®を開発しています。これを使うことで内部データ構造の必要な部分のみのデータを通信回線でやり取りしたり、ハードディスクへ保存したりするプログラム開発の多くを自動化できます。GitHubで公開し、ここの技術ブログで使い方を解説していますので、ご覧頂けると幸いです。