More C++ Idioms/Small Object Optimization

< More C++ Idioms

As seen in boost::function to implement type erasure but faster than the heap allocated holder object