問題タブ [valarray]

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 に答える
430 参照

c++11 - std::valarray で .sum() と += を使用する

私は型を使用しておりstd::valarray<std::valarray<double>>、含まれている各 valarrays 要素を合計して、std::valarray<double>.

std::valarray<T>C++ のドキュメントには、演算子 .sum() は、演算子が型 T に対して定義されている限り適用できると記載されてい+=ます。以下のコード (method1) はこれを に適用しようとしますstd::valarray<std::valarray<double>>が、結果はナンセンスに見えます。

+=ただし、演​​算子 (method2)を使用してこれを手動で実行すると、必要な結果が得られます。しかし、method2 が機能するという事実は、演算子+=が type に対して定義されていることを意味しているように思われstd::valarray<double>ます。動作するはずです。ここで何が起こっているのか本当に理解できません...

私のコード:

私の出力:

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

c++ - gcc での std::valarray の実装のバグですか?

次のプログラムを試しました

適切な関数がこのステートメントで暗黙的に使用されbeginているというエラーメッセージを受け取りましたv3

見つからない。

だから私は次のコードを試しました

そして結果を得た

しかし、この発言のとき

に変更されます

出力は

operator *forstd::valarray<int>は次のように宣言されます

の実装のバグstd::valarray<int>ですか?