これは可能ですか?クラスの機能の一部を簡単に使用できるようにするマクロを作成したいと考えています。
クラスに setup() と cleanup() という 2 つのメンバー関数があるとします。setup() は、独自のスコープで実行する必要がある操作のパラメーターを設定し、cleanup() はクリーンアップを実行します (コンストラクターに似ています)。およびデストラクタの概念)。
現在、私はこれを行います:
myClassInstance.setup(); //call the setup function
{ //start scope
//CREATE LOCAL VARS
//DO STUFF IN THIS SCOPE
myClassInstance.cleanup(); //cleanup
} //end scope, destroy locals
しかし、代わりに次のようなことをしたいと思います:
NEWSCOPE(myClassInstance) //calls setup()
{
//CREATE LOCAL VARS
//DO STUFF IN THIS SCOPE
} // calls cleanup() and destroys locals
私の考えは、マクロが使用され、 setup() と cleanup() がコンストラクタ/デストラクタで実装できるときにインスタンス化できるマクロクラスを作成することでした...またはそのようなもの...
これはこれについて考える正しい方法ですか、それともユーザーが記述したコードを本質的にラップできるマクロを記述する別の方法はありますか?
* 編集 * 関数名が混乱を招いていたため、命名規則を修正しました。