Mathematica 9 is now available
THIS IS DOCUMENTATION FOR AN OBSOLETE PRODUCT.
SEE THE DOCUMENTATION CENTER FOR THE LATEST INFORMATION.
Mathematica > コアとなる言語 > 手続き型プログラミング > フロー制御 >

Throw

Throw[value]
評価を中止し,この関数に対して適用された最も近くにあるCatchの値として value を返す.
Throw[value, tag]
Catch[expr, form]だけによりキャッチできる.formtag にマッチしたパターンである.
  • tag にはどのような式でも指定できる.
  • Throw[value, tag]における tag は,Catch[expr, form]form と比較されるときに毎回再評価を受ける.
  • ThrowをキャッチするためのCatchが何も指定されていないとき,エラーになり,Throwは未評価のまま返される.
Throwが評価されると直ちに囲み込んでいるCatchに退避する:
In[1]:=
Click for copyable input
Out[1]=
 
「例外処理を実行する」ことができる関数を定義する:
In[1]:=
Click for copyable input
Catchの結果はThrowが投げ出した(実行した)ものである:
In[2]:=
Click for copyable input
Out[2]=
In[3]:=
Click for copyable input
Out[3]=
 
Throwを使って基準を満たしたときにループから退避する:
In[1]:=
Click for copyable input
Out[1]=
バージョン 1 の新機能 | バージョン 3 での修正機能
Ask a question about this page  |  Suggest an improvement  |  Leave a message for the team