可変長テンプレート 質問する

可変長テンプレート 質問する

C++0x では、テンプレートが任意の数の引数を取ることができます。タプルを実装する以外に、この機能の最適な使用方法は何でしょうか?

ベストアンサー1

  1. 型安全な printf
  2. 任意の数のコンストラクタ引数の転送ファクトリーメソッド
  3. 持つ任意ベースクラスは便利なものを追加したり削除したりすることができますポリシー
  4. 移動による初期化異種型のオブジェクト可変長テンプレート コンストラクターを使用して、コンテナーに直接格納します。
  5. 持つリテラル演算子ユーザー定義リテラル (「10110b」など) の値を計算できます。

サンプル3:

template<typename... T> struct flexible : T... { flexible(): T()... { } };

サンプル4:

struct my_container { template<typename... T> my_container(T&&... t) { } };
my_container c = { a, b, c };

サンプル5:

template<char... digits>
int operator "" b() { return convert<digits...>::value; }

次のサンプルコードを参照してください。ここ

おすすめ記事