問題タブ [template-templates]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - C++ テンプレート テンプレート パラメーターの正しい使用法
テンプレート テンプレート パラメーターを使用するのに問題があります。以下は、非常に単純化された例です。
コンパイラ (g++ (Ubuntu 4.8.2-19ubuntu1) 4.8.2) は、次のエラーを報告します。
何が問題なのですか?
c++ - テンプレートを送信するには?
Base
2 つのテンプレート パラメータを持つテンプレート クラスが必要です。特に、2 番目のパラメーターはテンプレート パラメーターです。CRTPDerived
から派生します。のようなBase
基本クラスを生成したいのですが、生成する基本クラスは の実際の基本クラスと同じではありません。テンプレートを送信するにはどうすればよいですか?Derived
Base<Derived,Derived::second_tmpl>
Derived
元のテンプレートではなく、元のテンプレートと同じテンプレートを使用してください。判断は誤りです。
c++ - MPL 型リストを可変個引数コンテナーに折りたたむにはどうすればよいですか?
型のリストがある場合、そのリストが可変引数であるため、そのリストを使用して型を取得するにはどうすればよいですか?
言い換えれば、私はこれから行きたいです:
に:
(順番は関係ありません)
を使用した私の試みは次のfold
とおりです。
残念ながら、これによりプレースホルダーに関するエラーが発生します。
c++ - 奇妙なテンプレート テンプレート パラメータの予想されるエラー
このコードをコンパイルしようとすると:
clang 3.2.7 raise、この奇妙なエラーがわかりません:
ダムはクラステンプレートですよね?
コメントで尋ねられたように、これはラットがどのように見えるかです:
c++ - テンプレート テンプレートの条件付きコンパイル
正しい戦略を使用しているかどうかはわかりませんが、メソッド 1 とメソッド 2 のいずれかが false に設定されている場合に fmethod1 または fmethod2 を呼び出す必要がないように、bool 値パラメーターを持つテンプレートを使用したいと考えています。それを行うために動的テーブルを使用できましたが、テンプレートでこれを行うことができることを発見したばかりで、この構文の使用法を次のようにトレーニングしていました。
fmethod1
次の結果が得られるように、特殊化でandメソッドを宣言fmethod2
(true を返すように設定) できます。
Caller
しかし、必要がない場合にメソッド1またはメソッド2を実装する必要がないように、これを行う方法が欲しかったのWrapper
ですが、コンパイラ(gcc
)は、テンプレートプロパティ method1 は false です。
私の最初の質問は、通常の継承virtual
アプローチではなく、このアプローチで何らかのメリットが得られるかどうかです。これは次のようになります。
そして第二に、実装する必要なしにこのアイデアをどのように実装できるかについてのアイデアはありますCaller fmethod1
か?
c++ - テンプレート テンプレート パラメーター引数名の使用法
コード内
ではTTP
、どこでも使用できますか?標準でこれらの名前で何が起こるかについての参照が見つかりません。