Perl-goto
提供:Dev Guides
Perl goto関数
説明
この関数には3つの形式があります。最初の形式では、現在の実行ポイントがLABELと呼ばれるポイントにジャンプします。 この形式のgotoを使用してループまたは外部関数にジャンプすることはできません。同じスコープ内のポイントにのみジャンプできます。
2番目の形式では、EXPRが認識可能なLABELに評価されることを想定しています。 一般に、通常の条件ステートメントまたは関数を使用してプログラムの実行を制御できるようにする必要があるため、その使用は非推奨です。
3番目の形式は、現在実行中のサブルーチンを名前付きサブルーチンの呼び出しに置き換えます。 新しいサブルーチンは、引数スタックと元のサブルーチンの他の機能を継承します。新しいサブルーチンは、別の名前で呼び出されたことを知ることさえできなくなります。
構文
以下は、この関数の簡単な構文です-
goto LABEL
goto EXPR
goto &NAME
戻り値
この関数は値を返しません。
例
以下は、その基本的な使用法を示すコード例です-
#!/usr/bin/perl
$count = 0;
START:
$count = $count + 1;
if( $count > 4 ) {
print "Exiting program\n";
} else {
print "Count = $count, Jumping to START:\n";
goto START;
}
上記のコードが実行されると、次の結果が生成されます-
Count = 1, Jumping to START:
Count = 2, Jumping to START:
Count = 3, Jumping to START:
Count = 4, Jumping to START:
Exiting program