問題タブ [binary-operators]

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

c# - スレッドセーフな左シフト

それを行う明白な方法は、ロックを使用することです。

しかし、c# にはスレッド セーフなインクリメントとデクリメントに適したクラスがあることを知っているInterlockedので、左シフトのようなバイナリ操作でも同じことができるようなものがあるかどうか疑問に思いました。

Interlocked左シフト演算子のクラスのようなものはありますか?

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

operator-overloading - Juliaで二項演算子をオーバーロード/再定義するにはどうすればよいですか?

|| ("or") または&&("and") 二項演算子を再定義する方法についての参照を失い続けています。私は最初にやらなければならないことをどこかで読みimportall Baseました。それから私は試しました

そしてまた

しかし、これらのどれも機能しませんでした。誰かがこれを行う方法の基本を説明するリファレンスを提供できれば幸いです...「ジュリアで二項演算子を再定義する」などのクエリを含むものを見つけることができませんでした...

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

php - エコー付きの後の PHP 二項演算子

エラー メッセージの戻り値:

解析エラー: 構文エラー、99 行目の D:\HOSTS\web_portal\test.php の予期しない T_ECHO

?: または if? を使用せずに約を実行できますか? echo または print_r など。

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

c# - 演算子「<」は、タイプ「long」および「ulong」のオペランドには適用できません

redgate の .NET Reflector 8 を使用し、.dll を C# ファイルにエクスポートする機能を使用しましたが、このエラーを修正する方法がわからないという 1 つのエラー状況に遭遇しています。

エラーの状態:エラー 36 演算子 '<' は型 'long' および 'ulong' のオペランドに適用できません

エラーがビットごとに関係していることは理解していますが、特定の状況を修正する方法がわかりません。

エラーのスナップショットを次に示します。

ここに画像の説明を入力

この種のエラーを修正する最善の方法は何ですか?

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

c# - DynamicObject 二項演算のバインド動作は、演算子とオペランドによって異なります

TryBinaryOperationのドキュメントによると、このメソッドは、二項演算の左側が動的オブジェクトの場合に呼び出されます。

動的オブジェクトから派生したクラスを持っていますが、常にそうであるとは限りません。この例では、オーバーライドへの 3 つの呼び出しが予想されますTryBinaryOperationが、取得されるのは 2 つだけです。

ただし、最初の呼び出しでは文字列 " DynamicRestProxy.UnitTests.MyDynamicadd it" が返されます。つまりd.ToString() + "add it"、動的クラスのバイナリ操作を試みる代わりに、加算演算子によって呼び出されています。さらに、「+」の右側の演算子が int の場合、動的操作が試行されます。

上記のプログラムの出力は次のとおりです (呼び出しd + "add it"が に到達しないことに注意してTryBinaryOperationください)。

どこにあると思いますか

これは正しい予想される動作ですか? もしそうなら、説明するドキュメントはどこかにありますか?

これは VS.NET 2013 と .NET 4.5 を使用しています。

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

javascript - Javascriptで条件を表現する二項論理演算子

三項演算子を使用していますが、else 句を使用せずにチェックしたいことがよくあります。これを省略する簡単な方法があるかどうか疑問に思っています。

私はそれを見つけました

の代わりとして機能し、if (a) {b}2 文字を節約しますが、そうではありません

三項演算子なので、これは理にかなっていると思います。

私の唯一の考えは、それらの空の中括弧は少し見苦しい:ということです。空白のステートメントを指定する他の方法はありますか?

または、二項?演算子はありますか? 私は仕様を調べましたが、二項論理演算子をどのように使用するかわかりません。それifが目的だと思います。

二項論理演算子を使用して {} の条件または省略形を表現する方法はありますか? これはおそらく 3 人のキャラクターにとって怠惰の極みであることはわかっていますが、共有できるトリックが誰か知りたいです。

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

delphi - Delphi から C++ ビルダーへの変換

私は Delphi にソース コードを持っています。このhttp://hscripts.com/tutorials/cpp/bitwise-operators.phpに従って、ビット単位の演算子を C++ Builder で変換しますが、結果は異なります

Delphi のソース コード

Delphi の結果:148C0正しい!

C++ Builder のソース コード

C++ ビルダーの結果: 0001???

変換の何が問題になっていますか?

C++ Builder 6 と Delphi 7 を使用しています

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

matlab - MATLAB での for ループを回避するための高度な添字割り当て -- 一度に多くのバイナリ演算

{1,...,n} の値を持つ大きな配列 A と、同じサイズの別の配列 B があります。

私は次のすべてを取得したい:

そして、その結果に対して別のことを行います (今のところそれほど重要ではありません)。

私は次のようなことを試しました:

もちろん駄目。

for ループのアプローチ

動作しますが、MATLAB ではすべての for ループを回避できると確信しています! しかし、ここで立ち往生。助言がありますか?おそらく、ある種のインライン匿名関数呼び出しでしょうか?