問題タブ [logical-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.
c++ - C ++に非短絡論理「and」はありますか?
tl; dr:C ++に非短絡論理積がありますか(&&と同様)?
呼び出したい関数が2つあり、戻り値を使用して3番目の複合関数の戻り値を計算します。問題は、両方の関数に常に評価してもらいたいということです(システムの状態に関するログ情報を出力するため)
IE:
もちろん、関数の条件はそれほど単純ではありません。そうです、一時変数を使用して2つの関数の戻り値を格納し、一時変数に対して「短絡」ロジックを実行できることに気付きましたが、両方の関数からログメッセージを取得しながら、Func3で1行の戻り値を維持するための、「エレガントな」言語ソリューションがあるかどうか疑問に思いました。
回答の概要:
「ビットごとの」演算子| および&を使用して効果を得ることができますが、returnタイプがboolの場合に限ります。ANSIC++仕様ではこれについての言及は見つかりませんでした。私の知る限り、これは「bool」がint(true = 1、false = 0)に変換され、次にビット演算子が使用されてから、boolに変換されるために機能します。
演算子「+
」および「*
」も使用できます。これはANSIC++仕様には記載されていませんが、おそらく上記と同じ理由で機能します。+
trueは1に変換され、0以外はtrueに変換されるため、 ""give"または" 。*
1(true)* 0(false)== 0(false)および1(true)* 1(true)== 1(true)であるため、""は"および"に対して機能します
これらは両方とも、整数への暗黙の型変換に依存しているようで、その後ブール値に戻ります。これらは両方とも、コードを維持しようとする人を台無しにする可能性があります。
他の回答は、「一時的なものを使用する」または「独自に実装する」に要約されますが、これは問題ではありませんでした。目標は、それを実行するためにC++標準に実装されたオペレーターがすでに存在するかどうかを確認することでした。
java - Java短絡評価
Javaには短絡評価があると思いましたが、この行はまだヌルポインター例外をスローしています:
この場合perfectAgent
はnull
であるため、式全体が を返すようにしたいのですfalse
が、この行で NullPointerException が発生してアプリがまだクラッシュしています。
編集、一般的な応答:
perfectAgent
isであるため、式が true になることはあり得ないため、 の右側にあるものは実行されませんnull
。さらに言えば、有効な参照が含まれていないため (null ですべて)、実行&&
することはできません。別のステートメントでnullをチェックする必要がないように、短絡評価を使用しようとしています。これにより、ロジックがより雑になります。perfectAgent.getAddress()
perfectAgent
編集2(または、私はばかです):ええ、人生の多くのことと同様に、自分がバカだと世界に発表した直後に答えを見つけます. この場合、何か他のことをしているときに Eclipse の自動ビルドをオフにし、オンに戻さなかったので、ソースと一致しないクラス ファイルをデバッグしていました。
c - Cでの割り当ての論理値
2つの部分からなる質問。
(curr_ptr = (void*)curr_data[1])
論理的に何に評価されますか。TRUE
?
また、私はそのかなりハックっぽいことを知っていますが、while
ステートメントは合法的なCですか?コード内の別の場所に割り当てを配置するには、大きなゆがみを経験する必要があるので、そこに残しておくことができれば本当にいいのですが、それが非常にひどいためにみんなの目が炎上する場合は、変更します。
django - django-query に論理パーサーを実装する
これは「長いもの」になります。できるだけ多くのコードと説明を含めています...必要に応じてコードを捨てることはありません。
django クエリ システムに論理パーサーを実装しようとしています。サンプルに適用されるタグに対してユーザーが複雑なクエリを提供できる場所。これは本質的に、ユーザーが定義されたタグ (組織タイプ、研究された疾患など) を適用できる科学サンプル リポジトリの一部です。次に、これらのタグに対する論理クエリによって定義されたサンプルの永続的な「バスケット」を作成できます。
Sample1 を返します。Q()
オブジェクトのセットを作成するためにクレイジーな文字列評価ハックを使用します。
ただし、これは複雑な操作順序や () によるグループ化が必要な場合には失敗します。同じサンプル データを指定すると、クエリ: (TagA OR TagB) AND NOT TagD
Sample1、Sample4 が返されるはずですが、返されません。単一の Sample オブジェクトを取得してクエリを実行できる「1 つずつ」関数を実装しました。ただし、私の実際のデータベースには、最大 40,000 個のサンプルと最大 400 個のタグ (サンプルあたり約 7 個) があり、すべてのサンプルで反復手法を完了するのに最大 4 分かかります。だから私は毎晩バスケットを計算し、日中はそれらを凍結します. より多くのバスケット、サンプル、およびタグをキュレートし始めると、これが不十分になるのではないかと心配しています.
助言がありますか?
javascript - JavaScriptで(myVar && foo())はどういう意味ですか?
上記のコードはどういう意味ですか?それは何に相当しますか?
私はそれが単一の行で実行されると思います。
c++ - C++ で評価される && (and) 演算子のどちら側 (左または右)
and && 演算子が評価される順序はどれですか
たとえば、次のコード
アルファが開始されずに使用されているという例外をスローしました。&& の左側の式は常にアルファの値を最初に開始すると思っていましたが、間違っているようです
何か案が?
ありがとう
batch-file - DOS バッチの論理演算子 (「and」、「or」)
DOS バッチ ファイルに論理演算子をどのように実装しますか?
php - forループでのANDと&&の使用(優先順位とは関係ありませんか?)
このコードが「Hello!」と出力するのはなぜですか。4回実行してから、「1」を出力します。
これは「Hello!」を印刷しませんが まったくその後、「1」を出力します。
ANDと&&の優先順位が異なることは知っていますが、ここでは当てはまらないようです。私は何が欠けていますか?(forループ内で$ blahを使用し、その値を設定したいので、上記のコードのバリアントを使用しています)。助けてくれてありがとう!
javascript - If ステートメントが And (&&) 演算子で機能しない
単純な if ステートメントのように見えるものを書き上げるのに苦労しています。modがa、b、またはcと等しくない場合は、これを行う必要があります。これが私が試みていたものですが、失敗しました:
これをエディターに入力すると、エラーがあると表示されます。具体的には、「エンティティー名は、エンティティー参照の '&' の直後に続く必要があります。」..テストに行くと機能しません。
どんな助けでも大歓迎です!!
更新: URL: esber.squarespace.com
完全なスクリプト:
検証ページ (/verify)、「あなたは検証されていません」ページ (/not-verified)、またはログイン ページ (/ login) -- ユーザーが sessvars を設定して確認済みでない限り、ユーザーはホームページに進むことができます。
これをテストするために、私は esber.squarespace.com にアクセスし、右側のメニュー項目の 1 つをクリックします (このメニューは、ページの操作が完了すると最終的に非表示になります) -- 確認せずに別のページに移動しようとすると、 age first は /verify ページにリダイレクトされるはずですが、それは起こっていません。
スクリプトを次のように修正した場合:
それでうまくいく(?)
php - データ型の不一致を確認する方法は?(not === false)
PHPでのトリプルイコールマッチングの反対は何ですか?
!==
使い方は正しいですか?助けてくれてありがとう。