DynaMix( Dynamic Mixins)是多态性的新观点。 它使用户可以在C ++的运行时组成和修改多态对象。
该库是创建项目体系结构而不是实现其目的的一种方法。 它致力于最大的性能和最小的内存开销。
DynaMix非常适合包含非常复杂对象的系统的软件架构,这些对象包括但不限于:
游戏(尤其是角色扮演游戏或策略)
CAD系统
企业系统
UI库
该库使用dynamix::object类型作为占位符,可以使用现有的类(mixins)扩展其实例,从而为特定实例提供所有这些类型的功能。 访问新形成的类型的接口是通过消息完成的,消息是库生成的独立函数,可以将其视为方法。
这是一个小示例,说明您使用库时代码的外观:
// assuming my_objects.get_ally(0); is a way to get an ally to the
// main character in a game
dynamix::object& obj = my_objects.get_ally( 0 );
// now let's make the obj