212

プログラムを終了してメッセージを表示する 1 行の関数呼び出しはありますか? 私はPerlでそれが次のように簡単であることを知っています:

die("Message goes here")

これを入力するのにうんざりしています:

puts "Message goes here"
exit
4

4 に答える 4

367

abort関数はこれを行います。例えば:

abort("Message goes here")

注:どちらが に書き込むのではなく、abortメッセージは に書き込まれます。STDERRputsSTDOUT

于 2008-09-17T18:50:05.210 に答える
24

コード内の実際のエラーを示したい場合は、RuntimeError例外を発生させることができます。

raise RuntimeError, 'Message goes here'

これにより、スタックトレース、発生した例外のタイプ、および指定したメッセージが出力されます。ユーザーによっては、スタック トレースが怖すぎて、実際のメッセージがノイズの中で失われる場合があります。一方、実際のエラーが原因で死亡した場合は、スタック トレースからデバッグ用の追加情報が得られます。

于 2008-08-27T05:25:26.473 に答える
1

そのような機能は聞いたことがありませんが、実装するのは簡単です...

def die(msg)
  puts msg
  exit
end

次に、これがすべてのスクリプトに含める .rb ファイルで定義されている場合は、ゴールデンです.... 組み込みではないからといって、自分で実行できないわけではありません;-)

于 2008-08-27T04:54:19.217 に答える