>>24
vtbl だけじゃなくて abstruct class の個数が増えるのも嫌ってるんじゃない?
IUIAdonerImplWindoid の方を abstruct class でやろうとすると、IWindow なんてのを使って、
T::GetWindow() のところで (dynamic_cast<IWindow*>(this))->GetWindow() とすることになる。

効率性とか記述性とか抜きにして本質を比べたら、UIイベントを特定のスレッドにシリアライズ
するかしないか、くらいしか手法の違いって無くなっちゃうような。。。