問題タブ [compiler-generated]

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

c++ - 他のものに基づいて自動的に提供される C++ 演算子のオーバーロードはありますか?

ラッパーを作成していてint、すべての演算子のオーバーロードを提供する必要があるとします。作成者はすべてをリストする必要がありますか、または作成者が提供したものに基づいて自動生成できますか? コンパイラは、既存の演算子から新しい自動定義演算子を推測できますか?

を定義するoperator==と、operator!=自動的に が表示されますか? それともその逆?

を定義すると、無料operator++()で入手できますか? operator++(int)それともその逆?

+=タイプビジネスはどうですか?operator+の既存の定義をと組み合わせてoperator=を生成できoperator+=ますか? 理論的には可能なはずですが、そうですか?

>=toなどについても同じ質問ですが、、、 の<定義を完全に列挙する必要がありますか?>>>=<=

0 投票する
0 に答える
70 参照

c# - C# メソッドが yield return を使用しているかどうかを検出する

簡単なキャッシングメカニズムを書こうとしています。基本的に、メソッドが呼び出されるたびに、その戻り値をキャッシュに保存する必要があります。AOPを使用すると、簡略化した CacheAspect は次のようになります。

ただし、アスペクトがyield returnを使用するメソッドをインターセプトすると、コンパイラが生成したステートマシンのみをキャッシュし、具体化された結果はキャッシュしません。そのため、その場合はフェイルファストにしてほしいと思います。

したがって、yield return を使用するかどうかに関係なく、メソッドの戻り値から差し引きたいと思います。これまでのところ、仕事を成し遂げるこの解決策しか見つけられませんでした。

これに関する私の問題は、コンパイラによって生成された他の型があり、どのような状況で発生するのかがわからないことです。除外すべきではないメソッドをキャッシュメカニズムから除外することは可能ですか? または別の言い方をすれば、yield return を使用するメソッドをより具体的にターゲットにする方法はありますか?