C++的拟编译期多态/拟动态绑定技术
今天介绍的是一个足够简单但是又很神奇的技术,叫做拟编译期多态Simulated Compile-time Polymorphism,微软的ATL里面大量使用了这样的技术,叫做拟动态绑定Simulated Dynamic Binding,这种技术最早被称为奇异递归模板模式Curiously Recurring Template Pattern.
首先我们来看一份足够简单的代码:
template <typename T>
struct RecursiveBoltIn
{
void DoIt()
{
static_cast<T*>(this)->DoSomething();
}
};



Recent Comments