問題タブ [fold-expression]

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 投票する
0 に答える
149 参照

c++ - C++17 パラメーター パックのコンパイル エラー

C ++ 17で「パラメーターパック」の機能を示すために、以下のようなインターネットからプログラムを入手しました

しかし、-std=c++17 を指定して g++5.3 および 6.1 でコンパイルすると、エラーが報告され、エラー メッセージの内容がわかりません。

説明を手伝っていただけませんか?どうもありがとう。

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

c++ - C++17: integer_sequence の使用とコンパイル エラー

integer_sequence を使用して、数値の範囲がすべて特定の値を下回っているかどうかを判断したいと考えています: is_range() は true を返し、そうでない場合は false を返します。以下のように:

clang3.8 を使用してコンパイルしましたが、失敗しました。

コードを修正するにはどうすればよいですか? フォールド表現の私の理解が間違っていると思います

それを修正する方法は?

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

c++ - 折りたたみ式と空のパラメーター パック: 期待される結果は何ですか?

次の最小限の例を考えてみましょう。

コメント行はコンパイルされません。の代わりに を
使用しても同じことが当てはまります。 ブール値を含むものは代わりに機能します。*+

ここ(ワーキング ドラフト) では、空のパラメーター パックに関する言及は見つかりませんでした。
一方、ここ(isocpp) では、上記の場合のデフォルトの結果は のようですint()

フォールド式と空のパラメーター パックを混在させると、正確にはどのような動作が期待されますか?

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

c++ - cout での C++17 フォールド式

私は新しい c++17 フォールド式を学んでおり、このコードはc++17 フォールド式から見ました。このコードが機能する理由を知りたい:

しかし、これではありません:

私の意見では、これは論理的にも見える可能性があり、印刷順序を逆にする可能性があります。

0 投票する
2 に答える
1575 参照

c++ - フォールド式を使用してパラメーターパックをラムダに展開する - gcc vs clang

次のコード スニペットを検討してください。

clang++ 3.8+はコードを正常にコンパイルします

g++ 7.0は、次のエラーでコンパイルに失敗します:

post呼び出しとラムダを削除すると、 g++ は fold expression をコンパイルします

ラムダ、フォールド式、およびテンプレート関数呼び出しの間のこの相互作用は、何らかの形で標準によって禁止されていますか、それとも gcc のバグですか?