ステージを作る 4. 階段を置く

今度は階段を作ります。階段の場合、インスタンス、向き、座標(行と列)の4つのパラメーターを.place()メソッドに渡してあげます。
ただし、今回は8つも階段を作る必要があり、いちいち、

などと8つもインスタンスを作って、それをさらに.place()で配置していくのは面倒です。また、ポータルのように後で名前を指定して操作(ON/OFFなど)をする必要がないので、どれがどんな名前か自分で把握しておく必要もありません。
こういう時には出題文にあるちょっとした省略形が使えます。Stair()をいちいちletで変数に入れなくても、.place()文の1つめのパラメーターとして直接書くことができます。こうすることで毎回適当な名前で別々のStair()型インスタンスが出来て、続く向きや座標の通りに.place()文で配置されます。ただしそれぞれがなんて名前なのかはわからないので、後から変更したりはできないことになります。
このように、後で名前を指定して参照する必要がないオブジェクトならば自分でletで名前付きで宣言せずに直接.place文に型だけ指定する方法があると憶えておきましょう。逆に、CharacterやExpert、Portalなど、後から、ドット記法でch.moveForward()のように操作する必要がある場合は、自分でletから書いて名前を付けておく、という使い分け方です。

改善希望!役に立った! (+5 rating, 5 votes)
読み込み中...

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です