スコープは '{'で、 '}'トークンで終了します。ラベルは子スコープ内にあるため、アクセスできません。あなたががこのような何かをしたいと思う理由はgotoの構造のこれらのタイプは罰金コンパイルするが、他のために全く読めないです....
// YUCK YUCK YUCK!
start:
// some code
resetupdate:
//somecode here
// ... break becomes:
if (someCondition) { goto exitloop; }
//
goto start;
exitloop:
// your condition code...
goto resetupdate;
わからない:
は明らかに、あなたはより多くの、醜い後藤さんを使用してこの問題を解決することができますソフトウェア開発者。
さて、第二のために元の質問を見てみましょう私たちなければならない。
while(true){
// **1
resetupdate:
//somecode here **2
}
goto resetupdate;
は今、私はsomecode
(** 2)それ以外の場合は、この、何とかbreak
を放出することをここに推測しています全体のラベル/ goto
構成は意味をなさない。
resetupdate:
while(true){
//somecode here that uses break
}
goto resetupdate;
しかし、これは** 1はまた、コードが含まれますときに発生します問題が解決しない:だから、ループに戻って得ることは、単にResetUpdateメソッドを動かすの問題になります。これを行うには、より多くのgotoとラベルを使用するようにコードを変更することができます...
最初の場所でこれらの種類の構造を避ける方がずっと優れています。
コントロールフローステートメントの本体にジャンプすることはできません。 –
@Damien_The_Unbelieverはその目的のために他の方法を使用できますか? –
あなたがしようとしていることのより完全な*例が必要です。私は、whileの終わりに少なくとも*いくつかのコードがあると推測しています。そして、あなたがここに示したように、 'goto'は無条件ではありません。すべてのコンテキストが削除されたソリューションに対するあなたの試みではなく、*問題*を提示してください。 –