VBScriptは、GCがすべての行の後に実行されることを保証します。したがって、オブジェクトを作成し、参照を保持しない場合、そのデストラクタは行の最後で呼び出されます。これにより、いくつかの興味深いことを実行できます。そのうちの1つは、オプションの引数をシミュレートすることです。
with foo(mandatoryArg)
.optArg = 42
end
もう1つは、便利なビルダー構文を使用できるようにすることです。
with Schema.define("Foo")
.attr "name", String
with .attr "key", String
.lengthEquals(10)
end
end
この例では、デストラクタのスキーマと属性の定義を確定するオブジェクトをdefineとattrで返します。
私は一時オブジェクトをエフェメロンと呼んでいますが、そのような構造には既存の用語があるのではないかと思いました。他の場所でこれを見た人はいますか?