テンプレートの特殊化を使用する

殺虫剤

通常のテンプレート構造体は、特殊化できます。

template<typename T>
struct X{};

template<>
struct X<int>{};

C ++ 11は、usingテンプレートtypedefを表現するための新しいクールな構文を提供しました。

template<typename T>
using YetAnotherVector = std::vector<T>

構造体テンプレートの特殊化と同様の構造体を使用して、これらのテンプレート特殊化を定義する方法はありますか?私は以下を試しました:

template<>
using YetAnotherVector<int> = AFancyIntVector;

ただし、コンパイルエラーが発生しました。これはどういうわけか可能ですか?

ナワズ

番号。

ただし、エイリアスは次のように定義できます。

template<typename T>
using YetAnotherVector = typename std::conditional<
                                     std::is_same<T,int>::value, 
                                     AFancyIntVector, 
                                     std::vector<T>
                                     >::type;

お役に立てば幸いです。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

テンプレートの特殊化でconstchar **を使用する

分類Dev

constを参照するテンプレートの特殊化

分類Dev

部分的なテンプレートの特殊化でdecltypeを使用する

分類Dev

テンプレートの特殊化の代わりに関数テンプレートを使用する

分類Dev

typedefを使用したテンプレートの特殊化

分類Dev

=を使用したテンプレート演算子の特殊化

分類Dev

型特性を使用して文字列イテレータのテンプレート関数を特殊化する

分類Dev

テンプレートの特殊化に関する問題

分類Dev

演算子を使用してテンプレートを特殊化する方法は?

分類Dev

テンプレートの特殊化にタイプを追加する

分類Dev

std名前空間にテンプレートの特殊化を追加する

分類Dev

配列を引数とするテンプレートの特殊化

分類Dev

テンプレートの宣言、定義、および特殊化を理解する

分類Dev

C ++テンプレートの特殊化に基本クラスを追加する

分類Dev

C ++テンプレートの特殊化に基本クラスを追加する

分類Dev

Visual C ++でテンプレートの特殊化を使用する場合のコンパイラエラー

分類Dev

テンプレート化されたデータ型のテンプレートを特殊化する

分類Dev

C ++でキーワードdeleteを使用して特定のテンプレート特殊化を削除する方法

分類Dev

テンプレートの特殊化を無視し、非特殊化されたテンプレートを明示的に使用します(std :: vector <bool>)

分類Dev

別のクラスをクラステンプレートの特殊化として使用する方法

分類Dev

C ++ 20概念テンプレート関数の特殊化を使用する場合の依存関係

分類Dev

テンプレートの特殊化で非型テンプレートテンプレートパラメータを使用する

分類Dev

enable_ifを使用したテンプレートの特殊化がClangで失敗し、GCCで機能する

分類Dev

テンプレート特殊化内での typedef の使用

分類Dev

テンプレートメンバー関数を特殊化する方法は?

分類Dev

デフォルト値を使用したテンプレートの特殊化

分類Dev

テンプレート関数のタイプ特性に依存する特殊化

分類Dev

テンプレート化された演算子のオーバーロードを特殊化する方法は?

分類Dev

C ++で複数のベーステンプレートを使用する場合のテンプレートの特殊化

Related 関連記事

  1. 1

    テンプレートの特殊化でconstchar **を使用する

  2. 2

    constを参照するテンプレートの特殊化

  3. 3

    部分的なテンプレートの特殊化でdecltypeを使用する

  4. 4

    テンプレートの特殊化の代わりに関数テンプレートを使用する

  5. 5

    typedefを使用したテンプレートの特殊化

  6. 6

    =を使用したテンプレート演算子の特殊化

  7. 7

    型特性を使用して文字列イテレータのテンプレート関数を特殊化する

  8. 8

    テンプレートの特殊化に関する問題

  9. 9

    演算子を使用してテンプレートを特殊化する方法は?

  10. 10

    テンプレートの特殊化にタイプを追加する

  11. 11

    std名前空間にテンプレートの特殊化を追加する

  12. 12

    配列を引数とするテンプレートの特殊化

  13. 13

    テンプレートの宣言、定義、および特殊化を理解する

  14. 14

    C ++テンプレートの特殊化に基本クラスを追加する

  15. 15

    C ++テンプレートの特殊化に基本クラスを追加する

  16. 16

    Visual C ++でテンプレートの特殊化を使用する場合のコンパイラエラー

  17. 17

    テンプレート化されたデータ型のテンプレートを特殊化する

  18. 18

    C ++でキーワードdeleteを使用して特定のテンプレート特殊化を削除する方法

  19. 19

    テンプレートの特殊化を無視し、非特殊化されたテンプレートを明示的に使用します(std :: vector <bool>)

  20. 20

    別のクラスをクラステンプレートの特殊化として使用する方法

  21. 21

    C ++ 20概念テンプレート関数の特殊化を使用する場合の依存関係

  22. 22

    テンプレートの特殊化で非型テンプレートテンプレートパラメータを使用する

  23. 23

    enable_ifを使用したテンプレートの特殊化がClangで失敗し、GCCで機能する

  24. 24

    テンプレート特殊化内での typedef の使用

  25. 25

    テンプレートメンバー関数を特殊化する方法は?

  26. 26

    デフォルト値を使用したテンプレートの特殊化

  27. 27

    テンプレート関数のタイプ特性に依存する特殊化

  28. 28

    テンプレート化された演算子のオーバーロードを特殊化する方法は?

  29. 29

    C ++で複数のベーステンプレートを使用する場合のテンプレートの特殊化

ホットタグ

アーカイブ