問題タブ [raise]

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

objective-c - Objective-C、NSDecimalNumberHandlerおよびNSDecimalNumberBehaviorsプロトコルの使用

電卓のクラスは、Objective-Cを学ぶ人にとって人気のある出発点のようです。そのため、「電卓」クラスでは、「decimalNumberByAdding:withBehavior:」メソッドを使用するように加算関数を定義しました。'_behavior'はinitメソッドで定義されます。説明されているコードを以下に示します。

NSDecimalNumberBehaviorsプロトコルを適切に使用するには、次の3つのメソッドを実装する必要があります:'-roundingMode'、'-scale'、および'-exceptionDuringOperation:error:leftOperand:rightOperand:'(ただし、上記のNSDecimalNumberHandlerですでに指定されているroundingModeおよびscaleではありません。 '_行動'?)。

このプロトコルを使用する動機は、「_ behavior」で定義されているエラーの1つ(オーバーフローや精度の低下エラーなど)が発生した場合に例外を発生させて処理することです。

WebとAppleのドキュメントを検索した後、NSDecimalNumberBehaviorsプロトコルの使用方法、および上記の「_behavior」で説明されているエラーを適切に発生させて処理する方法はまだ明確ではありません(プロトコルの実装には、「_behavior」と比較すると冗長性が含まれているようです' 宣言)。

NSDecimalNumberBehaviorsプロトコルを使用し、「_behavior」で定義されているエラーを発生させて処理する適切な方法は何ですか?おそらく、例が最も役立つでしょう。ありがとう : )

- アップデート:

ドキュメントをもう一度見ると、NSDecimalNumberHandlerがNSDecimalNumberBehaviorsプロトコルを採用していることがわかります。つまり、NSDecimalNumberHandlerを適切に初期化して使用する必要があるということです。

除算メソッドを追加した後(0による除算の例外をテストするため)、コードは次のようになります。

実際、0で除算すると、キャッチされない例外がスローされ、プログラムが終了します。わかりました、それは良いです。スローされた例外をどのようにキャッチし、構文的にどこでキャッチしますか?

0 投票する
4 に答える
10506 参照

delphi - Delphiですべての例外発生を無効にするにはどうすればよいですか?

例外またはエラー(アクセス違反、インディソケットエラー、タイムアウトなど)が発生したときにすべてのダイアログボックスを無効にする方法はありますか?これらは私のプログラムで時々スローされますが、これらのエラーは決して致命的ではなく、無視することができます。ダイアログボックスだけが邪魔です。Delphi7を使用しています。

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

delphi - Delphi Re-Raise Exception(プロシージャでパラメータとして渡される)

これは re-raise 例外のサンプルであり、うまく機能しています

ここに私のカスタマイズ方法があります

しかし

結果

(1)->EConvertError -> エラーメッセージ

(2) ->例外-> エラーメッセージ

このコードのように最後の行を変更するとうまくいきます

(1)->EConvertError -> エラーメッセージ

(2)-> EConvertError -> エラーメッセージ

しかし、「モジュール 'Test.exe' のアドレス 00405F04 でアクセス違反が発生しました。アドレス 00000000 を読み取りました。」メッセージの後

ベース例外と同じ例外タイプを発生させる方法

解決策はraise TObject(AcquireExceptionObject); です。//<- "E : で解決したい

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

rspec - RSpecの例は、マシンごとに失敗が異なります

最初のものは、次のようにエラー情報を出力します。

1)UnitShip data_generator / master.rb:9:inunit_ship' # ./spec/models/unit_ship_spec.rb:8:inブロック(3レベル)in '

2)UnitShipにする试增删改:删除は成功するはずです。失敗/エラー:unit_ship = UnitShip.create(DataGenerator :: Master.unit_ship)Psych :: SyntaxError:14行目14列目でYAMLを解析できませんでした#。/ spec / support / data_generator / master.rb:9:in unit_ship' # ./spec/models/unit_ship_spec.rb:28:inblock( 3レベル)in '

1.65秒で終了13例、2失敗

失敗した例:

rspec ./spec/models/unit_ship_spec.rb:7#UnitShip

もう1つは、エラー情報を次のように出力します。

1)ユニットの更新は成功しないはずです失敗/エラー:@fabric = FactoryGirl.build(:fabric)ActiveRecord :: RecordInvalid:校验失败:编号已经加使用#./ spec / models / unit_spec.rb:23:in ` 'のブロック(3レベル)

2)ユニットの破棄は成功しないはずです失敗/エラー:@fabric = FactoryGirl.build(:fabric)ActiveRecord :: RecordInvalid:校验失败:编号已经被使用#./ spec / models / unit_spec.rb:38:in ` 'のブロック(3レベル)

1.16秒で終了13例、2失敗

失敗した例:

rspec ./spec/models/unit_spec.rb:21#ユニットの更新は成功しないはずですrspec ./spec/models/unit_spec.rb:36#ユニットの破棄は成功しないはずです

================================================== ====================この最初のものは正しくなく、2番目のものは正しいです。

なぜ?

私を助けてください 。ありがとう !

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

wpf - 親指でDragDeltaイベントを発生させる方法

以下に示すように、コンポーネントの可視性が変化したときに移動を開始したいと思います。それ以外の場合は、ユーザーが移動を開始するためにもう一度クリックする必要があり、それは私のアプリケーションの使いやすさの点で悪いためです。

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

python - TypeError:例外は古いスタイルのクラスであるか、str ではなく BaseException から派生したものでなければなりません

以下は私のコードです:

そして、これを実行すると、TypeError

では、どのようなタイプである必要がありtestますか?

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

oracle - RAISE_APPLICATION_ERRORはメッセージを返しません

これはテーブルトリガーの一部です。エラー番号とメッセージが返されるはずですが、アラートが表示されるとメッセージ番号のみが返されます。「エラーメッセージ」はありません。どうしたの

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

python - try-except-raise 節、良い振る舞い?

過去に、次のような try-except 句を書いていることに非常に気付きました。これの主な理由は、より少ないコードを記述することです。

そうでなければ私は書く必要があったので、私はこのようにしていた

私は実際には、チェック アンド レイズ操作を行うメソッドを記述するというアイデアが好きですが、大きな欠点が 1 つあります。それは、読みやすさです。特にコードの折り畳みを行うエディターにとって、tryステートメントは読者に内部で何が起こっているかをあまり伝えていませんが、if not os.path.isdir(source_dir)かなり良いヒントです。

IMHO try-except 句が必要なのは、例外の発生元である例外のキャッチャー(トレースバックのリーダー) を混乱させるためです。

このデザインについてどう思いますか?それはあなたにとってひどいですか、素晴らしいですか、それとも混乱しますか? または、状況を改善する方法について何かアイデアはありますか?

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

ruby - rubyはThread.abort_on_exceptionからの中止を救助または確認できません

スレッド内の例外をすぐにキャッチしてすべてのスレッドを停止する必要があるため、スクリプトでabort_on_exceptionを使用しています。残念ながら、これは例外が親スレッドに発生しないことを意味します-おそらくこれは、例外がグローバルスコープで発生することになったためですか?

とにかく、これが問題を示す例です:

abort_on_exceptionを使用しているときにスレッドで発生した例外をどのように救済できますか?

これは、さらに厄介なことを示す新しい例です。スレッドはbeginブロック内の実行を強制終了できますが、例外を発生させることなく実行を強制終了しますか?

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

events - c# を vb.net の「RaiseEvent」ステートメントに変換して、Gzip を使用するイベントを発生させます

私はクラスをc#からvb.netに変換しました..ページサイズを縮小するためにasp.netページを圧縮したいという私のポイント、、問題はvb.netに変換した後です、私はこのエラーがあります

説明: この要求を処理するために必要なリソースのコンパイル中にエラーが発生しました。次の特定のエラーの詳細を確認し、ソース コードを適切に変更してください。

コンパイラ エラー メッセージ: BC32022: 'Public Event PostRequestHandlerExecute (sender As Object, e As System.EventArgs)' はイベントであり、直接呼び出すことはできません。「RaiseEvent」ステートメントを使用してイベントを発生させます。

ソース エラー:

178行目:

行 179: Private Sub Init (context As HttpApplication) IHttpModule.Init を実装

180行目: context.PostRequestHandlerExecute += New EventHandler(context_BeginRequest)

181行目:エンドサブ

182行目:

asp.netにGzipを実装しようとしています...事前に感謝します....