こんにちは、高木です。

今回はgeometry_managerクラスにconfigureコマンドに相当するconfigureメンバー関数を追加していくことにします。最初に考えないといけないのは、configureコマンドと基本コマンドはconfigureがあるかないかの違いだけでシンタックスがそっくりだということです。コピペでベタベタに実装することもできますが、ここは共通の下請け関数を作ってあげることにしましょう。

というわけで、geometry_managerクラスに次のような下請け関数を追加しました。privateメンバーでもいい気がしたのですが、念のためprotectedにしています。

次に、これらの下請け関数を使って、前回作った基本コマンドのメンバー関数を書き換えます。

あとは同じようにしてconfigureメンバー関数も作っていきます。

これでconfigureコマンドを作ることができました。

次回はforgetなど他のコマンドも作り込んでいく予定です。