今、「C++のためのAPIデザイン」を読んでます。 テンプレートを使用する際の、テクニックについてまとめてみました。 C++のためのAPIデザイン 目次 テンプレートとは? テンプレートの用語 特殊化 部分的な特殊化 非明示的なインスタンス化のAPI設計 明示的なインスタンス化のAPI設計 テンプレートとは? テンプレートとは、コンパイル時にコードを生成する機能です。 型だけが異なる大量のコードを、生成する時など特に役に立ちます。 良く知られている例として、C++のコンテナクラスがあります。 vector<int> int_vector; // int型を扱うVectorクラスのインスタンス vector<float> float_vector; // float型を扱うVectorクラスのインスタンス vector<string> string_vector; // string型を扱う