問題タブ [parameter-pack]

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.

0 投票する
1 に答える
58 参照

c++ - 2 つのパラメーター パックを含む requires 句を概念に抽出する方法は?

完全な転送の候補であるテンプレート化されたコンストラクターを備えたこの(おそらくあまり役​​に立たない)クラステンプレートがあります。ただし、コンストラクターに渡される型がクラス全体に指定されたものとまったく同じであることを確認したかった (cvref 修飾子なし):

今私は作ることができます:

そして私は作ることができません:

どっちがいい。


requires ...しかし、私は体をに抽出したかったconcept:

しかし、これは私にこのエラーを与えます:

concept same_unqualified_types2 つのパラメーター パックを使用しようとしているところに何か問題があるのではないかと思います。手動でテストしようとしましたが、same_unqualified_types<int, int>orsame_unqualified_types<int, int, Pack...>を実行しても機能しないようです。Pack...int

私のロジックはどこに欠陥がありますか? requiresその句をに抽出できますconceptか?

免責事項: CTAD と演繹ガイドを使用して、概念を必要とせずに同様のことを達成できることを私は知っています。私の理解がどこに欠けているのか知りたいだけです。

0 投票する
1 に答える
51 参照

c++ - パラメーター パックを使用した標準コンストラクターのないオブジェクトの配列

サイズNの std::arrayを、標準コンストラクターを使用せずにオブジェクトで埋めたいと考えています。

std::array<kissfft<float>, 64>具体的には私の場合です)

これにより、エラーが発生します

エラー: 削除された関数の使用 ...標準コンストラクター

設定

初期化リストを使用して配列を埋めることができます。

初期化リストにはN 個のオブジェクトが必要です。

また、パラメーター パックを使用して配列を構築できます。

質問

これを逆に使用して、単一の引数からパラメーター パックを作成する方法はありますか。

これにより、すべてのオブジェクトが {init1,init2} で初期化されるN non_std_conの配列が構築されます。

お時間をいただきありがとうございます

0 投票する
3 に答える
58 参照

c++ - テンプレートパラメータパックC ++からの最初のパラメータのアンパック

テンプレート、特にパラメーター パックを初めて使用するので、パックから最初の値を取得できるかどうか疑問に思います。

たとえば、次のコード:

の最初の値を実際に取得するにはどうすればよいargs...ですか?

注意する価値がありargs..ます。さまざまなタイプ (文字列、ブール値など) を含めることができます