Combinations of C++ features, like inheritance, templates, and class nesting, allow for the expression of powerful component patterns. In particular, research has demonstrated that, using mixins that rely on parameterized inheritance, one can express customized object-oriented designs concisely with efficient implementations. In this paper, we discuss pragmatic issues related to mixin-based programming. We explain surprising interactions of C++ features and policies that sometimes complicate mixin implementations, while other times enable additional functionality without extra effort.
Recommendations
Mixin-Based Programming in C++
GCSE '00: Proceedings of the Second International Symposium on Generative and Component-Based Software Engineering-Revised PapersCombinations of C++ features, like inheritance, templates, and class nesting, allow for the expression of powerful component patterns. In particular, research has demonstrated that, using C++ mixin classes, one can express layered component-based ...