13.8 メソッドを間接的に呼び出す

実行時にならないと判明しない名前を使用して、メソッドを呼び出す。

  • メソッド名を文字列として、スカラ変数に保存し、実際のメソッド名を矢印演算子の右側に使用するときに、その変数を使用する。
$methname = "flicker";
$obj->$methname(10);   # $obj->flicker(10); を呼び出す

# オブジェクトの3個のメソッドを名前によって呼び出す
foreach $m ( qw(start run stop) ) {
  $obj->$m();
}