問題タブ [unchecked]
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# - unchecked()による奇妙な結果、コンパイラのバグの可能性はありますか?
次のスニペットはゼロと評価されます。
一方、これを行う場合:
結果は(これを推測しますか?)int.MinValue
です。その事実だけでも十分に奇妙です[以下を参照]がunchecked
、変換が確実に失敗したり、オーバーフローが発生したりすることを知らないふりをするコードをコンパイラーに強制的に発行させることを意図した印象を受けました。つまり、コンパイラが関連する値を認識していない場合と同じ結果が得られるはずです(「算術オーバーフローのチェック」が無効になっている場合)。
それで、ここで何が起こっているのですか?私の理解はunchecked
間違っていますか?
C#/。NET標準に従って、結果の1つは「間違っている」ですか?
編集:int.MinValue
簡単に説明できます:cvttsd2si
オーバーフローが発生したが例外がマスクされている場合に0x80000000を返します。これは、逆アセンブリウィンドウに表示されるように、JITコンパイラによって使用される命令です。しかし、それは問題のどの部分も解決しません。
ECMA 334(C#2仕様)によると、unchecked
キーワードは常に切り捨てられる必要があるため、次の両方の場合で結果はゼロになります。
しかし、そうではありません、2番目のものはを与えint.MinValue
ます。これはまだ私にはコンパイラのバグのようなにおいがします。
jquery - JQueryは、それぞれが選択されたときにラジオボタンのチェック状態を変更します
検索グループには、Zip、City、Countyの3つのラジオボタンがあります。グループ内のすべてのラジオボタンの1つがクリックされたときに、それらのチェック状態を切り替えるにはどうすればよいですか?
Jquery1.6.2を使用しています。よろしくお願いします、アッティラ
java - Java: compareTo(T) へのチェックされていない呼び出し
上記のコードをコンパイルすると、次の 4 つの警告が生成されます。
さらに多くの亜種を試しましたが、警告は残ります。上記の test.compare メソッドを記述して呼び出す正しい方法は何ですか?
ありがとう!
PS: test.compare は単なる例です。そのような機能は必要ありません。しかし、test.compare のように、署名に Comparable-implementing オブジェクトが必要な関数を実装する必要があります。
PS2: 私は 25 年以上プログラミングをしており、約 10 年前に Java をプログラミングしたこともありますが、現在 Java を使用している (私の仕事で必要とされている) ことは私を凶暴に駆り立てています。経験豊富なプログラマにとって、Java の学習は見た目よりもはるかに困難です。Java の学習に関するものはたくさんありますが、その 99% はせいぜい時代遅れであるか、プログラミングの初心者をランク付けするために売り込まれています (つまり、非常に冗長です)。最悪の場合、まったくのゴミです...上記の質問に対する答えをすぐにゼロにできる Java。
java - Java ジェネリック、チェックされていない警告
これはオラクルページのチュートリアルの一部です:
次の例を検討してください。
List<Number>
詳細には、静的タイプがである List オブジェクト l が、別の静的タイプを持つ別の List オブジェクト ls に割り当てられると、ヒープ汚染状況が発生します。 List<String>
// これは oracle チュートリアルからのものです。
私の質問は、なぜ静的型List<Number>
であり、単なる??ではないのですList
か?? 後で別の質問は私の研究のコードからのものです:
ではなく、なぜこのコードでelArray = new ListaConPI[numVertices+1]
書くのelArray = new ListaConPI<Adyacente>[numVertices+1]
でしょうか?
どうもありがとう !
c# - チェックされていないブロックはBigIntegerでは機能しませんか?
たとえば、BigIntegerを使用している場合、チェックされていないコンテキストが機能しないことに気づきました。
なぜそうなのか、何か考えはありますか?大きな整数を他のプリミティブ整数型に変換する方法に何か特別なものはありますか?
ありがとう、
php - チェックボックスのチェック値がいくつかのphpページを通過しました
そのため、値を渡すか、値をCookieに保存できるチェックボックスを作成しようとしているため、複数の異なるページで使用できます。
現在、私はこれを持っています:
そして、Cookieを1に設定するだけで、チェックボックスのチェックを外したときにCookieをゼロに戻すことはできません。何かアイデアはありますか?
java - 未チェックのキャスト: この場合、それを回避する方法はありますか?
チェックされていないキャストの警告が発生する状況があります。抑制警告を使用できることはわかっていますが、このスニペットのコーディング方法を変更することで回避する方法があると本能的に教えてくれます。しかし、私は解決策を表面化させることができないようで、新鮮な目で行うことができます.
この関数は、それぞれが Bus を拡張するクラスを含むいくつかのリストで呼び出されます。Bus の一部である busToAdd でいくつかの関数が使用されるため、タイプ E を使用しても機能しません。
警告を抑制せずにこれを再構築する方法について何か提案はありますか?
編集: busList に E を使用できることがわかりましたが、割り当てたバスをキャストする必要があり、同じ警告が表示されます。バスの代わりにすべての用途に E を使用してみることができます。テストしたら更新します。
c# - どのような状況で操作を未チェックとして指定しますか?
例えば:
これはどのような点で役立ちますか?どれか思いつきますか?
java - ジェネリックへのJava未チェック操作のキャスト
安全でない/チェックされていない操作に関する警告が次のように発行されるのはなぜでしょうか。
キャストがおかしい?ここで何が欠けているのか理解できません。
PS警告を取り除きたくありません。安全でない操作を理解したいです。
ありがとう!
c# - なぜ「チェックなし」で明示的に囲む必要があるのですか?
この奇妙な行動を私に説明できる人はいますか?
注:これは空のコンソールアプリケーションであり、算術チェックは有効になっていません(デフォルトでは)。よろしくお願いします。
編集:私は十分に明確であるはずでしたが、すべてではありません。
単語がバイトに収まらないことを私は知っています。ただし、デフォルトでは、C#プログラムでは、主にパフォーマンス上の理由から、特定の「危険な」操作が許可されています。
同様に、2つの大きな整数を合計して、オーバーフローがまったくない場合があります。
私の不思議は、上記のコンパイル時エラーについてでした。b1キャスト/割り当てがコンパイルされ、b2がコンパイルできません。どちらも同じ値のInt32であるため、明らかに違いはありません。
それが今はっきりしていることを願っています。